2023-07-11 00:01:26 +0200 | boxscape_ | boxscape |
2023-07-11 00:01:41 +0200 | boxscape | (~boxscape_@81.191.27.107) (Changing host) |
2023-07-11 00:01:41 +0200 | boxscape | (~boxscape_@user/boxscape) |
2023-07-11 00:01:56 +0200 | jonathan | (~jonathan@c83-252-3-92.bredband.tele2.se) (Ping timeout: 252 seconds) |
2023-07-11 00:02:16 +0200 | oneeyedalien | (~oneeyedal@user/oneeyedalien) |
2023-07-11 00:04:23 +0200 | oneeyedalien | (~oneeyedal@user/oneeyedalien) (Client Quit) |
2023-07-11 00:04:38 +0200 | oneeyedalien | (~oneeyedal@user/oneeyedalien) |
2023-07-11 00:11:42 +0200 | <jackdk> | Hackage might not be trying to build your package with the newer GHC? |
2023-07-11 00:12:37 +0200 | <boxscape> | jackdk right my question is partially whether I should be doing something to change that or if that's out of my control |
2023-07-11 00:13:21 +0200 | <jackdk> | I don't know. If you can admit earlier GHCs then you can loosen the base lower bound but that's all I got |
2023-07-11 00:13:44 +0200 | <boxscape> | yeah can't unfortunately because it relies on plugin features I added in GHC 9.4 |
2023-07-11 00:16:10 +0200 | nick3 | (~nick@2600:100d:b16c:65e0:b00a:235b:2088:f41c) (Ping timeout: 260 seconds) |
2023-07-11 00:18:03 +0200 | <geekosaur> | my guess is you're out of luck |
2023-07-11 00:18:47 +0200 | <geekosaur> | someone needs to sit down and fix hackage-matrix, but everyone's afraid to touch it 🙂 |
2023-07-11 00:21:07 +0200 | <boxscape> | oh well, I can live with this for now I guess |
2023-07-11 00:22:51 +0200 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
2023-07-11 00:25:35 +0200 | <geekosaur> | (wow, hasn't been touched since ghc 8.4, /me suspects this will require some work) |
2023-07-11 00:25:58 +0200 | <geekosaur> | (yes, I am silly enough to have cloned it and tried to build) |
2023-07-11 00:25:59 +0200 | acidjnk | (~acidjnk@p200300d6e7072f97cd043d78b3570e0c.dip0.t-ipconnect.de) |
2023-07-11 00:26:55 +0200 | Guest6127 | (~finn@rul16-h01-176-151-21-224.dsl.sta.abo.bbox.fr) (Ping timeout: 240 seconds) |
2023-07-11 00:27:28 +0200 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 250 seconds) |
2023-07-11 00:29:07 +0200 | nick3 | (~nick@2600:8807:9084:7800:81a9:9ad8:11b2:d730) |
2023-07-11 00:30:26 +0200 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) (Ping timeout: 246 seconds) |
2023-07-11 00:30:47 +0200 | dcoutts | (~duncan@212.187.244.66) |
2023-07-11 00:31:58 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 00:32:29 +0200 | dmgk | (~dmgk@user/dmgk) |
2023-07-11 00:36:16 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 245 seconds) |
2023-07-11 00:37:14 +0200 | mechap | (~mechap@user/mechap) |
2023-07-11 00:39:29 +0200 | oneeyedalien | (~oneeyedal@user/oneeyedalien) (Quit: Konversation terminated!) |
2023-07-11 00:42:05 +0200 | wroathe | (~wroathe@user/wroathe) |
2023-07-11 00:42:48 +0200 | Midjak | (~Midjak@82.66.147.146) (Quit: This computer has gone to sleep) |
2023-07-11 00:44:35 +0200 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2023-07-11 00:45:25 +0200 | nick3 | (~nick@2600:8807:9084:7800:81a9:9ad8:11b2:d730) (Ping timeout: 240 seconds) |
2023-07-11 00:50:18 +0200 | m21it | (~m21it@2800:ac:4021:c91e:57d4:3c1b:25c6:c66b) (Remote host closed the connection) |
2023-07-11 00:50:37 +0200 | m21it | (~m21it@2800:ac:4021:c91e:57d4:3c1b:25c6:c66b) |
2023-07-11 00:54:20 +0200 | dcoutts_ | (~duncan@79.137.104.194) |
2023-07-11 00:55:51 +0200 | dcoutts | (~duncan@212.187.244.66) (Ping timeout: 245 seconds) |
2023-07-11 00:57:27 +0200 | tremon | (~tremon@83.80.159.219) (Quit: getting boxed in) |
2023-07-11 00:58:13 +0200 | <bratwurst> | anyone willing to give some guidance on reactive-banana? |
2023-07-11 00:58:24 +0200 | <bratwurst> | i have code at https://pastebin.com/NHbe46jb |
2023-07-11 00:58:52 +0200 | YuutaW | (~YuutaW@2404:f4c0:f9c3:502::100:17b7) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-07-11 00:59:08 +0200 | <bratwurst> | my first question is with kbw definition |
2023-07-11 00:59:15 +0200 | YuutaW | (~YuutaW@mail.yuuta.moe) |
2023-07-11 00:59:42 +0200 | <bratwurst> | i get that doodleB is the behavior. |
2023-07-11 00:59:51 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 01:00:47 +0200 | <bratwurst> | so should 'kbFocused' actually be taking something from 'changes'? |
2023-07-11 01:01:23 +0200 | euandreh | (~Thunderbi@189.6.18.7) (Remote host closed the connection) |
2023-07-11 01:01:29 +0200 | <bratwurst> | i should end up with something of type 'Event ?' |
2023-07-11 01:01:43 +0200 | euandreh | (~Thunderbi@189.6.18.7) |
2023-07-11 01:01:57 +0200 | wroathe | (~wroathe@user/wroathe) (Read error: Connection reset by peer) |
2023-07-11 01:01:59 +0200 | <bratwurst> | because every time doodle changes i want to see if it was a kb focus change |
2023-07-11 01:02:02 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 01:02:06 +0200 | wroathe | (~wroathe@user/wroathe) |
2023-07-11 01:04:06 +0200 | m21it | (~m21it@2800:ac:4021:c91e:57d4:3c1b:25c6:c66b) (Remote host closed the connection) |
2023-07-11 01:04:24 +0200 | m21it | (~m21it@2800:ac:4021:c91e:57d4:3c1b:25c6:c66b) |
2023-07-11 01:04:47 +0200 | neuroevolutus | (~neuroevol@2001:ac8:9a:76::1e) |
2023-07-11 01:04:48 +0200 | Lycurgus | (~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz) |
2023-07-11 01:05:56 +0200 | gurkenglas | (~gurkengla@dynamic-046-114-179-181.46.114.pool.telefonica.de) (Ping timeout: 246 seconds) |
2023-07-11 01:07:04 +0200 | acidjnk | (~acidjnk@p200300d6e7072f97cd043d78b3570e0c.dip0.t-ipconnect.de) (Read error: Connection reset by peer) |
2023-07-11 01:07:55 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 240 seconds) |
2023-07-11 01:09:36 +0200 | gurkenglas | (~gurkengla@2.247.242.115) |
2023-07-11 01:09:38 +0200 | <jackdk> | Please try and use fewer/longer messages - you've pushed everything else off the screen. I don't know what reactive-banana<->sdl binding you're using. I haven't done FRP for a while but you almost never want to construct `Event`/`Behavior` from scratch unless you're binding to something outside your little FRP world. You do that with `fromAddHandler` to make a `MomentIO (Event a)` or `fromChanges` to make a `MomentIO (Behavior a)` |
2023-07-11 01:10:40 +0200 | gurkenglas | (~gurkengla@2.247.242.115) (Read error: Connection reset by peer) |
2023-07-11 01:11:02 +0200 | greentail | (~greentail@2804:214:8110:943f:f26e:d89b:2b54:3cc1) (Ping timeout: 245 seconds) |
2023-07-11 01:11:33 +0200 | <jackdk> | I'd also recommend the links I've collected at http://jackkelly.name/wiki/haskell/learning.html#functional-reactive-programming . Even if you're not going all the way to `reflex`, the workshop is great for getting around the abstractions, and you can bring back the idea of a `Dynamic a = (Event a, Behavior a)` where the event fires iff the behavior changes. I'd build those with `mapAccum` in bananaland. |
2023-07-11 01:14:00 +0200 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
2023-07-11 01:17:59 +0200 | <EvanR> | don't try to make e.g. a sine wave behavior and then fire an event every time it changes |
2023-07-11 01:18:28 +0200 | <EvanR> | it voids the warranty |
2023-07-11 01:18:52 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2023-07-11 01:19:01 +0200 | <ski> | % let emptyList = Debug.Trace.trace "emptyList" [] |
2023-07-11 01:19:01 +0200 | <yahb2> | <no output> |
2023-07-11 01:19:05 +0200 | <ski> | % emptyList |
2023-07-11 01:19:05 +0200 | <yahb2> | emptyList ; [] |
2023-07-11 01:19:07 +0200 | <ski> | % emptyList :: [Bool] |
2023-07-11 01:19:07 +0200 | <yahb2> | [] |
2023-07-11 01:19:50 +0200 | <bratwurst> | reason i'm finding this confusing is cause when i write something "naturally" the api seems to expect something different |
2023-07-11 01:20:14 +0200 | <ski> | bratwurst : hm, why `DatatypeContexts' ? |
2023-07-11 01:20:15 +0200 | <EvanR> | sounds like a bug in the naturally part |
2023-07-11 01:21:00 +0200 | <bratwurst> | ski: oh sorry. i had it as a class def but didn't think i needed overloading so i meant to change it to an existential type |
2023-07-11 01:21:17 +0200 | <bratwurst> | EvanR: i would agree :) |
2023-07-11 01:21:40 +0200 | m21it | (~m21it@2800:ac:4021:c91e:57d4:3c1b:25c6:c66b) (Remote host closed the connection) |
2023-07-11 01:21:53 +0200 | <bratwurst> | for example, i don't get how kbFocused becomes a 'Behavior' |
2023-07-11 01:21:55 +0200 | <ski> | it's generally agreed that `DatatypeContexts' doesn't do what you expect it to do, or at least that what it does doesn't tend to be that useful |
2023-07-11 01:21:59 +0200 | m21it | (~m21it@2800:ac:4021:c91e:57d4:3c1b:25c6:c66b) |
2023-07-11 01:23:04 +0200 | thegeekinside | (~thegeekin@189.217.90.138) (Read error: Connection reset by peer) |
2023-07-11 01:24:59 +0200 | <ski> | bratwurst : do note that `exists c. (c,c -> ..c..)' is equivalent to `nu c. ..c..' (greatest fixed point) |
2023-07-11 01:25:43 +0200 | <bratwurst> | ski: i will probably end up discarding my widget definition once i understand rb better |
2023-07-11 01:25:48 +0200 | <jackdk> | Remember that `Behavior` is an `Applicative`, so you can lift pure values into it without fussing around with IORefs or whatever. |
2023-07-11 01:27:00 +0200 | <ski> | by which i mean to point out that `data Widget b = forall c. MkWidget Box c (Key -> c -> (b,c)) (Mouse -> c -> (b,c))' (note i omitted `Render c => ' after `forall c. ', since i don't know how `Render' is defined) is equivalent to `data Widget b = MkWidget Box (Key -> (b,Widget b)) (Mouse -> (b,Widget b))' |
2023-07-11 01:27:29 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 246 seconds) |
2023-07-11 01:28:29 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 01:30:00 +0200 | <ski> | there seems to be no `writeIORef', yea |
2023-07-11 01:30:57 +0200 | <ski> | i imagine `type DoodleIO = IORef Doodle' as well as (correction) `kbFocused :: DoodleIO -> IO Nick' |
2023-07-11 01:32:04 +0200 | <bratwurst> | ski: yes you have that right. sorry not everything is there because i'm still trying to wrap my head around what i'm doing wrong |
2023-07-11 01:32:59 +0200 | ski | 's not really that familiar with `reactive-banana', fwiw |
2023-07-11 01:33:39 +0200 | <bratwurst> | yeah there's not much on hackage to go by either. |
2023-07-11 01:34:09 +0200 | dcoutts | (~duncan@79.137.104.194) |
2023-07-11 01:34:26 +0200 | <ski> | .. oh, `Widget' was a class, with `Render' as superclass, yesterday |
2023-07-11 01:34:30 +0200 | ski | 'd forgotten |
2023-07-11 01:35:25 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 240 seconds) |
2023-07-11 01:35:26 +0200 | dcoutts_ | (~duncan@79.137.104.194) (Ping timeout: 245 seconds) |
2023-07-11 01:35:27 +0200 | <ski> | anyway, `Widget Key AppEvent WidgetInternalState' for `Widget a b c' sounds like you'd want to keep `c' private (existential) |
2023-07-11 01:35:42 +0200 | <bratwurst> | in my lib, 'class Render a' has one method 'render :: Sz -> a -> Picture' |
2023-07-11 01:36:04 +0200 | <bratwurst> | 'Widget' is for things that have a size, a position and can be drawn |
2023-07-11 01:36:49 +0200 | <bratwurst> | ski: it seems like i will be replacing my 'Widget' definition with behaviors and mapAccumB |
2023-07-11 01:37:07 +0200 | <bratwurst> | i'm just not sure how |
2023-07-11 01:37:08 +0200 | <ski> | ok, good. so `data Widget b = forall c. MkWidget Box c (Sz -> c -> Picture) (Key -> c -> (b,c)) (Mouse -> c -> (b,c))' then corresponds to `data Widget b = MkWidget Box (Sz -> Picture) (Key -> (b,Widget b)) (Mouse -> (b,Widget b))'' |
2023-07-11 01:38:05 +0200 | <bratwurst> | what would be the name of how you're transforming this? |
2023-07-11 01:38:23 +0200 | <ski> | <ski> bratwurst : do note that `exists c. (c,c -> ..c..)' is equivalent to `nu c. ..c..' (greatest fixed point) |
2023-07-11 01:38:53 +0200 | <bratwurst> | lol. i don't know what 'nu' is. what do i look up? |
2023-07-11 01:39:09 +0200 | <bratwurst> | so nu is a greek symbol? |
2023-07-11 01:39:21 +0200 | <bratwurst> | defined to represent the greatest fixed point |
2023-07-11 01:39:23 +0200 | <ski> | hm .. i guess i sometimes call this (in the reverse direction), the "State encoding" (cf. "Church encoding") |
2023-07-11 01:40:26 +0200 | <ski> | ("Church encoding" being how `forall r. (..r.. -> r) -> r' is equivalent to `mu r. ..r..') |
2023-07-11 01:40:36 +0200 | <ski> | yes, greek symbols |
2023-07-11 01:40:55 +0200 | <ski> | consider |
2023-07-11 01:41:07 +0200 | <ski> | data Nat = Zero | Succ Nat |
2023-07-11 01:41:27 +0200 | <ski> | we can reformulate/refactor this as/to |
2023-07-11 01:41:55 +0200 | <ski> | newtype Nat = MkNat (Either () Nat) |
2023-07-11 01:42:07 +0200 | <ski> | (or `Maybe' in place of `Either ()', if you prefer) |
2023-07-11 01:42:20 +0200 | <ski> | bratwurst : you see this ? |
2023-07-11 01:44:03 +0200 | <bratwurst> | 'Left ()' would terminate things and there would be as many wraps as <n> |
2023-07-11 01:44:11 +0200 | <ski> | yes |
2023-07-11 01:44:26 +0200 | <ski> | in more "algebraic" notation, we could write the above as |
2023-07-11 01:44:30 +0200 | <ski> | Nat = 1 + Nat |
2023-07-11 01:45:32 +0200 | <jackdk> | bratwurst: Possibly useful to you: a small example which reads stdin and prints to stdout https://www.irccloud.com/pastebin/4vKg7tBe/BananaLines.hs |
2023-07-11 01:45:55 +0200 | dcoutts | (~duncan@79.137.104.194) (Ping timeout: 240 seconds) |
2023-07-11 01:46:57 +0200 | <ski> | (replacing `()' (the "unit" type, which has one (total / non-partial) inhabitant) with `1', and replacing `Either t u' (the "sum" type, which has `m + n' inhabitants, if `t' has `m' inhabitants and `u' has `n') with `t + u') |
2023-07-11 01:47:47 +0200 | <ski> | anyway, the problem now is that the *equation* `Nat = 1 + Nat' (in the unknown `Nat') has more than one solution |
2023-07-11 01:47:52 +0200 | mauke_ | (~mauke@user/mauke) |
2023-07-11 01:47:58 +0200 | ijqq_ | (uid603979@id-603979.helmsley.irccloud.com) (Quit: Connection closed for inactivity) |
2023-07-11 01:49:05 +0200 | <ski> | more generally, we have an equation of the form `t = F t', where `t' is the unknown/sought, and `F' is some type function. this is a "fixed point equation", because we're asking for an input (type) `t' to pass to `F', that gives the same `t' back as output (type) |
2023-07-11 01:49:30 +0200 | mauke | (~mauke@user/mauke) (Ping timeout: 260 seconds) |
2023-07-11 01:49:30 +0200 | mauke_ | mauke |
2023-07-11 01:50:09 +0200 | <bratwurst> | ok. makes sense so far |
2023-07-11 01:50:30 +0200 | <ski> | anyway, the *least* fixed point solution `t' for `t = 1 + t' is `t = Nat', for our usual intended notion of `Nat' ((finite !) natural numbers). the least fixed point is written `mu t. 1 + t' |
2023-07-11 01:51:43 +0200 | <ski> | the *greatest* fixed point solution `t' for `t = 1 + t' would be a notion of "(extended) natural numbers" that also contains an "infinity", namely what you get by `inf = Succ inf' / `inf = MkNat (Right inf)' in Haskell .. it's infinitely deep, never stops |
2023-07-11 01:51:59 +0200 | <ski> | the greatest fixed point is written `nu t. 1 + t' |
2023-07-11 01:52:25 +0200 | neuroevolutus | (~neuroevol@2001:ac8:9a:76::1e) (Quit: Client closed) |
2023-07-11 01:52:48 +0200 | Tuplanolla | (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) (Quit: Leaving.) |
2023-07-11 01:53:18 +0200 | <ski> | because Haskell is non-strict, we actually get the greatest fixed-point solution, with `data Nat = Zero | Succ Nat' (or the `newtype' variant), since we can define `int = Succ inf' (and we can compute with it) |
2023-07-11 01:53:46 +0200 | <bratwurst> | i think i get what you're saying now. because 'c' is a parameter to everything in my type it's "not there" |
2023-07-11 01:53:55 +0200 | <ski> | (well, it's more complicated in Haskell, because you also have "bottom" values, like `_|_',`Succ _|_',`Succ (Succ _|_)',.. in `Nat' ..) |
2023-07-11 01:55:38 +0200 | <ski> | anyway, *often* we really *intend* the *least* fixed point solution (the "finitely deep data structures, wrt some data type recursion"), rather than the *greatest* fixed point solution (the "potentially infinitely deep data structures / processes, wrt some data type recursion") .. so we can *pretend* that the recursive type we have (abstractly) is of the form `mu r. ..r..' |
2023-07-11 01:56:17 +0200 | <ski> | anyway, you should be able to convince yourself that `[a] = mu r. 1 + a * r' |
2023-07-11 01:56:51 +0200 | <ski> | however, when one's doing e.g. "OO"-like things, usually one wants the greatest fixed point version |
2023-07-11 01:56:58 +0200 | <ski> | simplest non-trivial example is probably |
2023-07-11 01:57:14 +0200 | <ski> | data Stream a = MkStream {head :: a,tail :: Stream a} |
2023-07-11 01:57:20 +0200 | <ski> | clearly, the corresponding equation here is |
2023-07-11 01:57:28 +0200 | <ski> | Stream a = a * Stream a |
2023-07-11 01:58:19 +0200 | <ski> | but if we only intend *finitely* deep values, then this type would be *empty* (as it would be in a strict programming language, like e.g. SML,OCaml,F# ..) |
2023-07-11 01:58:31 +0200 | <ski> | so, in this case, we really mean `Stream a = nu s. a * s' |
2023-07-11 01:59:20 +0200 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 4.0.1) |
2023-07-11 01:59:46 +0200 | <ski> | we can send a `head' message to a "stream object", and it'll tell us its current element value. and we can send a `tail' message to it, and it'll generate a new object state for us (usually traditional OO would use mutation of the original object here, but if we instead return a clone with some private state updated, this is what we get) |
2023-07-11 02:00:01 +0200 | <ski> | bratwurst : makes sense, still ? |
2023-07-11 02:01:56 +0200 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) |
2023-07-11 02:01:56 +0200 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
2023-07-11 02:01:56 +0200 | wroathe | (~wroathe@user/wroathe) |
2023-07-11 02:05:42 +0200 | <mauke> | # let rec x = { head = 0; tail = x };; |
2023-07-11 02:05:42 +0200 | <mauke> | val x : int stream = {head = 0; tail = <cycle>} |
2023-07-11 02:06:26 +0200 | <bratwurst> | ok 'nu s. a * s' means we're looking for the gfp of the equation 's = a * s'. 'head' would return the 'a', while 'tail' would return the 's'? |
2023-07-11 02:06:51 +0200 | <ski> | hah, nice. *nod*, i was forgetting recursion through constructors, in OCaml |
2023-07-11 02:06:55 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 240 seconds) |
2023-07-11 02:07:00 +0200 | <ski> | yes, bratwurst |
2023-07-11 02:07:24 +0200 | <mauke> | const struct stream x = { .head = 0, .tail = &x }; |
2023-07-11 02:08:03 +0200 | <ski> | that's a nice one |
2023-07-11 02:08:56 +0200 | johnw | (~johnw@69.62.242.138) (Quit: ZNC - http://znc.in) |
2023-07-11 02:09:29 +0200 | slack1256 | (~slack1256@186.11.22.119) (Ping timeout: 246 seconds) |
2023-07-11 02:11:34 +0200 | <ski> | bratwurst : anyway, consider `data Widget b = forall c. MkWidget {box :: Box,thing :: c,render :: Sz -> c -> Picture,handleKey :: Key -> c -> (b,c),handleMouse :: Mouse -> c -> (b,c)}', and you have some value `myWidget = MkWidget {box = myBox,thing = myThing,render = thingRender,handleKey = myHandleKey,handleMouse = myHandleMous} |
2023-07-11 02:12:30 +0200 | <mauke> | myHandleMous, in the tradition of creat() |
2023-07-11 02:14:15 +0200 | <ski> | `myThing' in `myWidget' has type `c', which is hidden/forgotten/abstract/opaque/skolem, the only thing you can do with it is pass it to `thingRender',`myHandleKey',`myHandleMous' |
2023-07-11 02:14:19 +0200 | <EvanR> | ski, is there a fixed point between Nat (least) and Nat + infinitenumber (greatest) |
2023-07-11 02:14:20 +0200 | mauke | considers |
2023-07-11 02:17:12 +0200 | <mauke> | the c is never consumed fully. the only thing you're getting out of it is basically an infinite stream of b's |
2023-07-11 02:17:16 +0200 | <ski> | that is, we could instead define `data Widget b = MkWidget {box :: Box,render :: Sz -> Picture,handleKey :: Key -> (b,c),handleMouse :: Mouse -> (b,c)}', and the version of the value where the methods have been pre-applied to `myThing' is now `myWidget = MkWidget {box = myBox,render = \sz -> thingRender sz myThing,handleKey = \k -> myHandleKey k myThing,handleMouse = \m -> myHandleMous m myThing}' |
2023-07-11 02:18:30 +0200 | <mauke> | that looks wrong |
2023-07-11 02:18:54 +0200 | <mauke> | where is c bound? |
2023-07-11 02:19:09 +0200 | <ski> | yea, should be `Widget b' instead of `c', in type signatures of `handleKey' and `handleMouse' |
2023-07-11 02:23:40 +0200 | <ski> | EvanR : you probably can't constructively point at any |
2023-07-11 02:29:21 +0200 | <EvanR> | assuming someone gives you a "missing link" datatype, what kind of shenanigans would result xD |
2023-07-11 02:29:28 +0200 | <EvanR> | if construct Void you win |
2023-07-11 02:32:59 +0200 | <ski> | "missing link" ? |
2023-07-11 02:39:11 +0200 | oo_miguel | (~Thunderbi@78-11-179-96.static.ip.netia.com.pl) (Ping timeout: 245 seconds) |
2023-07-11 02:41:21 +0200 | thegeekinside | (~thegeekin@189.217.90.138) |
2023-07-11 02:50:29 +0200 | <EvanR> | an inbetweener |
2023-07-11 02:50:36 +0200 | phma | (phma@2001:5b0:211f:7128:686c:a14f:dc50:817d) (Read error: Connection reset by peer) |
2023-07-11 02:50:51 +0200 | <ski> | oh, an included middle |
2023-07-11 02:51:03 +0200 | <EvanR> | basically what would even mean to have such a type |
2023-07-11 02:51:04 +0200 | phma | (~phma@host-67-44-208-125.hnremote.net) |
2023-07-11 02:52:48 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 02:55:18 +0200 | notzmv | (~zmv@user/notzmv) |
2023-07-11 03:03:02 +0200 | hugo | (znc@verdigris.lysator.liu.se) (Ping timeout: 246 seconds) |
2023-07-11 03:04:56 +0200 | aforemny | (~aforemny@2001:9e8:6cd3:c300:5cdf:9fe7:4b13:9351) |
2023-07-11 03:05:16 +0200 | aforemny_ | (~aforemny@i59F516C7.versanet.de) (Ping timeout: 252 seconds) |
2023-07-11 03:06:19 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 240 seconds) |
2023-07-11 03:06:48 +0200 | falafel | (~falafel@2603-7000-a700-8710-f5d5-ad04-474a-6450.res6.spectrum.com) |
2023-07-11 03:08:04 +0200 | johnw | (~johnw@69.62.242.138) |
2023-07-11 03:10:21 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 03:10:42 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2023-07-11 03:12:20 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2023-07-11 03:15:01 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 245 seconds) |
2023-07-11 03:15:02 +0200 | hugo | (znc@verdigris.lysator.liu.se) |
2023-07-11 03:16:49 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2023-07-11 03:17:38 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2023-07-11 03:19:21 +0200 | lainon | (~textual@2601:7c0:cb00:c0a0:68c0:c255:9c8b:3dd) (Quit: My Mac has gone to sleep. ZZZzzz…) |
2023-07-11 03:23:36 +0200 | <probie> | perhaps a silly question, but does anyone have any practical uses of `Yoneda`? It just seems less useful than `Coyoneda`. In a world without typeclasses, I could see myself wanting it, but in Haskell it just doesn't seem useful to me |
2023-07-11 03:26:49 +0200 | tabemann | (~tabemann@2600:1700:7990:24e0:8a68:ec61:bce2:eeda) (Read error: Connection reset by peer) |
2023-07-11 03:27:06 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
2023-07-11 03:33:59 +0200 | tabemann | (~tabemann@2600:1700:7990:24e0:fde3:7ca7:a0b6:2269) |
2023-07-11 03:36:25 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 240 seconds) |
2023-07-11 03:40:35 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-07-11 03:40:50 +0200 | <c_wraith> | well, Coyoneda is a lot more obvious. Its Functor instance does a very obviously useful thing. |
2023-07-11 03:43:11 +0200 | <Clinton[m]> | Is there a version of MonadReader that doesn't have the functional dependency? (i.e. so I can have two readers in the same monad stack) |
2023-07-11 03:43:27 +0200 | <Clinton[m]> | I know this would mean being more explicit about the type of ask but I'm okay with that. |
2023-07-11 03:44:08 +0200 | <probie> | (unhelpful advice) Move to your favourite effect system? |
2023-07-11 03:44:54 +0200 | <Clinton[m]> | probie: haha yeah I probably should... not something I'm going to get done this afternoon unfortunately |
2023-07-11 03:45:10 +0200 | <c_wraith> | Clinton[m]: you can import ReaderT from transformers instead of mtl. Then there's no MonadReader class at all |
2023-07-11 03:45:28 +0200 | <Clinton[m]> | probie: really starting to see some issues with MTL |
2023-07-11 03:45:42 +0200 | ystael | (~ystael@user/ystael) (Ping timeout: 260 seconds) |
2023-07-11 03:46:29 +0200 | <Clinton[m]> | c_wraith: does that mean I'm going to have to hard code the particular monad my functions operator on and manually poke down the monad stack with lift? |
2023-07-11 03:47:48 +0200 | <c_wraith> | It means you need to know what layer each effect is on, and use the correct number of lifts. amusingly you don't care what's on the levels you don't interact with. |
2023-07-11 03:48:37 +0200 | <probie> | I think the normal thing to do in mtl if you want `ReaderT Foo (ReaderT Bar m) a` is to give up and write `ReaderT (Foo, Bar) m a` (probably with an actual datatype instead of a tuple) |
2023-07-11 03:48:46 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 245 seconds) |
2023-07-11 03:48:48 +0200 | Nosrep | (~Nosrep@user/nosrep) |
2023-07-11 03:50:04 +0200 | <jackdk> | and then use your choice of classy lenses or generic-lens or whatever to pull out the specific bits you care about in each context. See also the gwils talk "Next Level MTL" https://www.youtube.com/watch?v=GZPup5Iuaqw |
2023-07-11 03:51:55 +0200 | <c_wraith> | Ultimately I don't think ad-hoc composition of layers is very useful. I see value in being able to decorate a value in extra effects locally, but I don't see much value in aggregating effect requirements to satisfy at a global entry point. |
2023-07-11 03:56:47 +0200 | <probie> | Am I going crazy, or instead of requiring `pure :: a -> f a` could we have chosen `unit :: f ()`? |
2023-07-11 03:58:05 +0200 | <c_wraith> | you could, but It just means you're going to rewrite pure pretty quickly to use it instead of fmap (const x) unit |
2023-07-11 03:58:28 +0200 | <boxscape> | probie search for "Monoidal": https://wiki.haskell.org/Typeclassopedia |
2023-07-11 03:58:46 +0200 | <c_wraith> | Well. Or x <$ unit, but no one knows those operators. :P |
2023-07-11 04:00:54 +0200 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Quit: Leaving) |
2023-07-11 04:01:58 +0200 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) |
2023-07-11 04:02:37 +0200 | <SrPx> | https://github.com/VictorTaelin/Interaction-Type-Theory |
2023-07-11 04:06:25 +0200 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds) |
2023-07-11 04:12:01 +0200 | meinside | (uid24933@id-24933.helmsley.irccloud.com) (Quit: Connection closed for inactivity) |
2023-07-11 04:12:56 +0200 | td_ | (~td@i53870925.versanet.de) (Ping timeout: 245 seconds) |
2023-07-11 04:14:52 +0200 | td_ | (~td@i5387091E.versanet.de) |
2023-07-11 04:15:26 +0200 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
2023-07-11 04:18:03 +0200 | <EvanR> | probie, unit :: Applicative f => f (), pair :: Applicative f => f a -> f b -> f (a,b) |
2023-07-11 04:20:23 +0200 | bratwurst | (~dfadsva@2604:3d09:207f:f650::5b03) (Ping timeout: 246 seconds) |
2023-07-11 04:27:06 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
2023-07-11 04:27:06 +0200 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2023-07-11 04:27:07 +0200 | finn_elija | FinnElija |
2023-07-11 04:27:27 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
2023-07-11 04:29:11 +0200 | ryanbooker | (uid4340@id-4340.hampstead.irccloud.com) |
2023-07-11 04:33:08 +0200 | dcoutts | (~duncan@79.137.104.194) |
2023-07-11 04:36:09 +0200 | Inst | (~Inst@2601:6c4:4081:2fc0:ba:e9a2:9797:91e4) |
2023-07-11 04:37:20 +0200 | elred | (~root@45.84.139.171) (Quit: leaving) |
2023-07-11 04:38:21 +0200 | bratwurst | (~dfadsva@2604:3d09:207f:f650::5b03) |
2023-07-11 04:39:22 +0200 | <bratwurst> | ok i put my code up to https://github.com/AirMover/doodle-gui |
2023-07-11 04:39:59 +0200 | <bratwurst> | it types except for the draw function, which im reworking, and the runDoodle, which has been put on hold |
2023-07-11 04:40:18 +0200 | <bratwurst> | anyways i put it up cause i want help with tomorrows question |
2023-07-11 04:40:20 +0200 | Inst | (~Inst@2601:6c4:4081:2fc0:ba:e9a2:9797:91e4) (Remote host closed the connection) |
2023-07-11 04:40:31 +0200 | <bratwurst> | how much are people here familiar with diagrams? |
2023-07-11 04:40:40 +0200 | Inst | (~Inst@2601:6c4:4081:2fc0:ba:e9a2:9797:91e4) |
2023-07-11 04:40:44 +0200 | <bratwurst> | i want to use diagrams to make guis |
2023-07-11 04:41:38 +0200 | m21it | (~m21it@2800:ac:4021:c91e:57d4:3c1b:25c6:c66b) (Ping timeout: 246 seconds) |
2023-07-11 04:43:01 +0200 | <bratwurst> | so basically my question is how i can reuse diagrams's layout combinators as gui combinators? know what i mean? |
2023-07-11 04:43:46 +0200 | <bratwurst> | i'm trying to think of a way to "mark" diagrams as reactive ones |
2023-07-11 04:44:00 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 04:45:18 +0200 | <bratwurst> | absent advice i will do the simple approach. i will just make a copy of its layout api |
2023-07-11 04:48:21 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:4c9c:5689:ea96:76a1) |
2023-07-11 04:48:40 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2023-07-11 04:48:50 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 04:51:56 +0200 | Claro | (~claro@user/Claro) |
2023-07-11 04:52:14 +0200 | <bratwurst> | or maybe i will just separate the relevant part of diagrams into it's own package |
2023-07-11 04:52:33 +0200 | <bratwurst> | i like that idea |
2023-07-11 04:53:17 +0200 | <EvanR> | diagrams forms a language whose built-in interpretation is ... graphical diagrams |
2023-07-11 04:53:25 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 240 seconds) |
2023-07-11 04:53:48 +0200 | <EvanR> | presumably you could hack it one way or another for a different interptation, but dunno if it can be much of a GUI |
2023-07-11 04:53:49 +0200 | <bratwurst> | yes but i want those graphics to respond to events |
2023-07-11 04:55:16 +0200 | <bratwurst> | currently i have 'data Layout = Layout [(Box, Nick)]' |
2023-07-11 04:55:45 +0200 | <bratwurst> | i have redone 'Widget' as 'data Widget = forall a. Render a => Widget a' |
2023-07-11 04:56:03 +0200 | <bratwurst> | so a nick is used to retrieve the widget from the map |
2023-07-11 04:56:18 +0200 | <EvanR> | one avenue is to define what a GUI is in a limited sense, and try to make a language for that |
2023-07-11 04:56:33 +0200 | <bratwurst> | each widget has an internal state "the drawing". currently i am using diagrams for the drawing |
2023-07-11 04:56:46 +0200 | <EvanR> | because the default GUI "does anything you can dream of" and that's the realm of IO |
2023-07-11 04:57:26 +0200 | <bratwurst> | is my conversation bothering you? i'm really enjoying trying to squish everything down to a few words |
2023-07-11 04:58:19 +0200 | <bratwurst> | lets do a basic example. a diagram showing some shapes spread around and as you move the mouse around the shapes change color |
2023-07-11 04:58:45 +0200 | <bratwurst> | so not a do-everything lib |
2023-07-11 04:58:59 +0200 | <EvanR> | that sounds a bit too limit but ok |
2023-07-11 04:59:03 +0200 | <EvanR> | limited |
2023-07-11 05:00:44 +0200 | <bratwurst> | so we can use diagrams to do the drawing obvs. and instead of doing gui stuff it just provides an operation that takes something that handles keys or mouse events |
2023-07-11 05:01:58 +0200 | <bratwurst> | so we could provide a function that takes a mouse position and the shape positions and says what event is raised when there is a hit |
2023-07-11 05:02:24 +0200 | <bratwurst> | so the gui is basically a transformer of gui events to app events |
2023-07-11 05:02:34 +0200 | <bratwurst> | and it just so happens to display things along the way |
2023-07-11 05:02:49 +0200 | <EvanR> | diagrams has a thing which lets you query a diagram at a point to get a value |
2023-07-11 05:02:56 +0200 | <EvanR> | should be useful |
2023-07-11 05:03:33 +0200 | <bratwurst> | you're right. that would be hit detection. so instead of bounding boxes i could use the shape itself |
2023-07-11 05:04:49 +0200 | <bratwurst> | so the idea right now is too see how overloaded diagrams operations are |
2023-07-11 05:05:25 +0200 | <jackdk> | probie: follow this logic further and you get: http://jackkelly.name/blog/archives/2020/08/19/abstracting_over_applicative_alternative_divisible_… (though the meat is really in the ed talk it references) |
2023-07-11 05:07:12 +0200 | <probie> | EvanR: the problem with `pair` is it doesn't feel very monoidal due to how tuples work in Haskell |
2023-07-11 05:07:26 +0200 | <bratwurst> | i don't know how to express it. i want to make things that are just like diagrams but which also understand responding to key and mouse events |
2023-07-11 05:07:45 +0200 | <EvanR> | well, unit and pair allow you to implement the normal Applicative API |
2023-07-11 05:07:59 +0200 | <EvanR> | and vice versa, it's an equivalent formulation |
2023-07-11 05:08:23 +0200 | <EvanR> | Monads may not seem very monoidal either but they are in some generalized sense |
2023-07-11 05:11:46 +0200 | greentail | (~greentail@2804:214:8110:b833:f96b:ef29:522c:c720) |
2023-07-11 05:16:03 +0200 | <bratwurst> | diagrams is already broken up. i can just use diagrams-core to start with |
2023-07-11 05:19:02 +0200 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 260 seconds) |
2023-07-11 05:19:25 +0200 | JimL_ | (~quassel@89.162.16.26) (Ping timeout: 240 seconds) |
2023-07-11 05:20:51 +0200 | boxscape | (~boxscape_@user/boxscape) (Ping timeout: 245 seconds) |
2023-07-11 05:26:45 +0200 | bratwurst | (~dfadsva@2604:3d09:207f:f650::5b03) (Ping timeout: 246 seconds) |
2023-07-11 05:27:06 +0200 | thegeekinside | (~thegeekin@189.217.90.138) (Ping timeout: 245 seconds) |
2023-07-11 05:27:45 +0200 | bratwurst | (~dfadsva@2604:3d09:207f:f650::5b03) |
2023-07-11 05:29:40 +0200 | falafel_ | (~falafel@2603-7000-a700-8710-f5d5-ad04-474a-6450.res6.spectrum.com) |
2023-07-11 05:30:43 +0200 | thegeekinside | (~thegeekin@189.217.90.138) |
2023-07-11 05:31:26 +0200 | falafel | (~falafel@2603-7000-a700-8710-f5d5-ad04-474a-6450.res6.spectrum.com) (Ping timeout: 246 seconds) |
2023-07-11 05:32:51 +0200 | JimL | (~quassel@89.162.16.26) |
2023-07-11 05:37:45 +0200 | hgolden | (~hgolden@2603-8000-9d00-3ed1-7b72-5998-97ad-985d.res6.spectrum.com) (Remote host closed the connection) |
2023-07-11 05:39:21 +0200 | bratwurst | (~dfadsva@2604:3d09:207f:f650::5b03) (Ping timeout: 246 seconds) |
2023-07-11 05:39:25 +0200 | notzmv | (~zmv@user/notzmv) (Ping timeout: 240 seconds) |
2023-07-11 05:41:17 +0200 | aforemny_ | (~aforemny@i59F516CB.versanet.de) |
2023-07-11 05:42:25 +0200 | aforemny | (~aforemny@2001:9e8:6cd3:c300:5cdf:9fe7:4b13:9351) (Ping timeout: 240 seconds) |
2023-07-11 05:47:08 +0200 | dextaa | (~DV@user/dextaa) (Quit: Ping timeout (120 seconds)) |
2023-07-11 05:48:30 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 05:48:34 +0200 | dextaa | (~DV@user/dextaa) |
2023-07-11 05:48:55 +0200 | hgolden | (~hgolden@2603-8000-9d00-3ed1-7b72-5998-97ad-985d.res6.spectrum.com) |
2023-07-11 05:51:02 +0200 | JimL | (~quassel@89.162.16.26) (Ping timeout: 246 seconds) |
2023-07-11 05:51:42 +0200 | JimL | (~quassel@89.162.16.26) |
2023-07-11 05:52:21 +0200 | trev | (~trev@user/trev) |
2023-07-11 05:57:27 +0200 | <Axman6> | I have a problem that I feel could be solved with GADTs, but I'm not quite sure how to make it work. I'd like to be able to represent, in a type which models CPU instructions, the restrictions on what sorts of operands they can have: registers, 12 bit immediates, 12 bit shifted immediates, 16 bit immediates, shifted registers etc. I can't figure out what something like ADD Operand Operand Operand ( a = b + c, where c may be imm12, imm12 << n, register) The di |
2023-07-11 05:57:27 +0200 | <Axman6> | fficulty comes from the operands needing to be able to unify with each other |
2023-07-11 05:57:55 +0200 | ryantrinkle | (~ryantrink@204.2.90.61) (Ping timeout: 240 seconds) |
2023-07-11 06:09:52 +0200 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
2023-07-11 06:10:25 +0200 | dcoutts | (~duncan@79.137.104.194) (Ping timeout: 240 seconds) |
2023-07-11 06:17:30 +0200 | son0p | (~ff@181.136.122.143) (Ping timeout: 246 seconds) |
2023-07-11 06:18:34 +0200 | son0p | (~ff@181.136.122.143) |
2023-07-11 06:20:45 +0200 | ryantrinkle | (~ryantrink@204.2.90.61) |
2023-07-11 06:22:56 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
2023-07-11 06:23:49 +0200 | greentail | (~greentail@2804:214:8110:b833:f96b:ef29:522c:c720) (Changing host) |
2023-07-11 06:23:49 +0200 | greentail | (~greentail@user/clcuc) |
2023-07-11 06:32:58 +0200 | <jackdk> | Axman6: have you seen https://hackage.haskell.org/package/x86-64bit-0.4.6.3/docs/CodeGen-X86.html ? |
2023-07-11 06:33:41 +0200 | bratwurst | (~dfadsva@2604:3d09:207f:f650::5b03) |
2023-07-11 06:47:03 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 06:48:25 +0200 | bratwurst | (~dfadsva@2604:3d09:207f:f650::5b03) (Ping timeout: 240 seconds) |
2023-07-11 06:50:07 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2023-07-11 06:52:17 +0200 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 245 seconds) |
2023-07-11 06:52:33 +0200 | <Axman6> | that does look helpful, thanks jackdk, as always |
2023-07-11 06:52:45 +0200 | waleee | (~waleee@h-176-10-137-138.NA.cust.bahnhof.se) |
2023-07-11 06:54:11 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 245 seconds) |
2023-07-11 06:54:24 +0200 | <Axman6> | x86 is all loosey goosey with sizes, damn these CISC shenannigans |
2023-07-11 06:56:03 +0200 | rainbyte | (~rainbyte@181.31.239.226) |
2023-07-11 06:57:12 +0200 | ripspin | (~chatzilla@1.145.170.49) |
2023-07-11 06:57:22 +0200 | <probie> | I like how instruction length varies based on which registers are used |
2023-07-11 06:57:42 +0200 | <jackdk> | Axman6: http://wall.org/~lewis/2013/10/15/asm-monad.html use of monadfix to do jump labels. Possibly handy |
2023-07-11 06:58:48 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 246 seconds) |
2023-07-11 07:01:35 +0200 | <Axman6> | I'm just looking for a little more type safety, I think the cnostruction of lables ets is fairly well taken care of (though not something i've looked at too closely) |
2023-07-11 07:02:15 +0200 | <greentail> | jackdk, what's wall dot org? |
2023-07-11 07:02:47 +0200 | <jackdk> | greentail: no idea. Found the link to a blog post off an ocharles "24 days of GHC extensions" blog on monadfix |
2023-07-11 07:03:20 +0200 | <jackdk> | greentail: wall.org/~larry makes me think it's the Perl guy and his family |
2023-07-11 07:07:43 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 07:09:08 +0200 | dibblego | (~dibblego@116.255.1.157) |
2023-07-11 07:09:08 +0200 | dibblego | (~dibblego@116.255.1.157) (Changing host) |
2023-07-11 07:09:08 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) |
2023-07-11 07:09:11 +0200 | azimut_ | (~azimut@gateway/tor-sasl/azimut) |
2023-07-11 07:11:38 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds) |
2023-07-11 07:12:25 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 240 seconds) |
2023-07-11 07:12:40 +0200 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) |
2023-07-11 07:13:24 +0200 | ryanbooker | (uid4340@id-4340.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
2023-07-11 07:15:55 +0200 | bontaq | (~user@ool-45779b84.dyn.optonline.net) (Ping timeout: 240 seconds) |
2023-07-11 07:17:55 +0200 | greentail | (~greentail@user/clcuc) (Ping timeout: 240 seconds) |
2023-07-11 07:18:50 +0200 | <dsal> | so much amazonka scrolling by |
2023-07-11 07:22:33 +0200 | <jackdk> | hm? |
2023-07-11 07:23:00 +0200 | hgolden | (~hgolden@2603-8000-9d00-3ed1-7b72-5998-97ad-985d.res6.spectrum.com) (Remote host closed the connection) |
2023-07-11 07:24:04 +0200 | <jackdk> | Where are you seeing this dsal? |
2023-07-11 07:24:10 +0200 | <dsal> | Oh, in my project where I'm updating it. |
2023-07-11 07:24:22 +0200 | <dsal> | Though something changed I don't quite understand yet. |
2023-07-11 07:25:01 +0200 | <jackdk> | Is this 1.6.1 -> 2.0 rc or were you already following git? |
2023-07-11 07:25:58 +0200 | <dsal> | It's an earlier 2.0 |
2023-07-11 07:26:21 +0200 | <dsal> | Trying to figure out what this should look like: `inAWS a = (newEnv Discover <&> set #_envRegion Oregon) >>= runResourceT . a` |
2023-07-11 07:27:09 +0200 | <dsal> | Wasn't there a haddock site up somewhere? |
2023-07-11 07:27:37 +0200 | <jackdk> | that's (partially) the auth refactor: https://github.com/brendanhay/amazonka/blob/ac8b11e6069ab2c1db6c5f1f5f25ad3c0f787c46/lib/amazonka/… |
2023-07-11 07:27:59 +0200 | <jackdk> | haddock site https://amazonka.brendanhay.nz/ stopped updating when bazel went away |
2023-07-11 07:28:33 +0200 | oo_miguel | (~Thunderbi@78-11-179-96.static.ip.netia.com.pl) |
2023-07-11 07:28:43 +0200 | <dsal> | Lame. :( Yeah, I did find the thing about `discover` – but I'm not sure where `envRegion` went. That's mentioned there. |
2023-07-11 07:31:11 +0200 | <jackdk> | you want `newEnv discover` (lowercase `d`, because credential chains are now values), and `#region` (if you like generic lens) or `env_region` (if you don't) - record field prefixes went away and all lenses are prefixed for consistency with service bindings |
2023-07-11 07:31:20 +0200 | <jackdk> | Oh, you figured the first half out |
2023-07-11 07:33:25 +0200 | <dsal> | I found examples. :) |
2023-07-11 07:34:43 +0200 | <dsal> | My code compiles. |
2023-07-11 07:34:45 +0200 | dsal | ships it |
2023-07-11 07:35:01 +0200 | dcoutts | (~duncan@79.137.104.194) |
2023-07-11 07:36:45 +0200 | <jackdk> | \o/ |
2023-07-11 07:37:35 +0200 | claro__ | (~claro@102.215.57.111) |
2023-07-11 07:37:39 +0200 | claro__ | (~claro@102.215.57.111) (Client Quit) |
2023-07-11 07:38:13 +0200 | <dsal> | Thanks for getting this out. I'm pretty excited about it. 2.0's a good deal better. |
2023-07-11 07:39:36 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 07:39:42 +0200 | <jackdk> | You're welcome. I'm pretty excited about getting it over the line too - it closes off a big project and will be good for a lot of people to have it on Hackage proper. |
2023-07-11 07:41:40 +0200 | _claro | (~claro@2c0f:2a80:df:6110:1484:b330:aad8:54f7) |
2023-07-11 07:41:56 +0200 | _claro | (~claro@2c0f:2a80:df:6110:1484:b330:aad8:54f7) (Changing host) |
2023-07-11 07:41:56 +0200 | _claro | (~claro@user/Claro) |
2023-07-11 07:41:57 +0200 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Quit: _ht) |
2023-07-11 07:42:19 +0200 | _claro | (~claro@user/Claro) (Client Quit) |
2023-07-11 07:44:07 +0200 | caryhartline | (~caryhartl@168.182.58.169) |
2023-07-11 07:44:38 +0200 | <Axman6> | jackdk: I do wish you'd use the same name on irc and girhub, then people would know you're the one to blame^w thank for all this amazonka work |
2023-07-11 07:44:45 +0200 | <Axman6> | github* |
2023-07-11 07:46:55 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 240 seconds) |
2023-07-11 07:48:55 +0200 | dcoutts | (~duncan@79.137.104.194) (Ping timeout: 240 seconds) |
2023-07-11 07:50:06 +0200 | ell | (~ellie@user/ellie) (Quit: Leaving) |
2023-07-11 07:50:46 +0200 | iteratee | (~kyle@162.218.222.207) (Read error: Connection reset by peer) |
2023-07-11 07:51:01 +0200 | iteratee | (~kyle@162.218.222.207) |
2023-07-11 07:51:55 +0200 | hugo | (znc@verdigris.lysator.liu.se) (Ping timeout: 240 seconds) |
2023-07-11 07:52:25 +0200 | ell | (~ellie@user/ellie) |
2023-07-11 07:53:34 +0200 | notzmv | (~zmv@user/notzmv) |
2023-07-11 07:57:06 +0200 | oneeyedalien | (~oneeyedal@user/oneeyedalien) |
2023-07-11 08:01:30 +0200 | oneeyedalien | (~oneeyedal@user/oneeyedalien) (Quit: Leaving) |
2023-07-11 08:04:55 +0200 | waleee | (~waleee@h-176-10-137-138.NA.cust.bahnhof.se) (Ping timeout: 240 seconds) |
2023-07-11 08:04:55 +0200 | mauke | (~mauke@user/mauke) (Ping timeout: 240 seconds) |
2023-07-11 08:05:47 +0200 | shriekingnoise | (~shrieking@186.137.175.87) (Ping timeout: 246 seconds) |
2023-07-11 08:07:38 +0200 | azimut_ | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds) |
2023-07-11 08:09:20 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2023-07-11 08:13:55 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 240 seconds) |
2023-07-11 08:15:45 +0200 | hugo | (znc@verdigris.lysator.liu.se) |
2023-07-11 08:20:22 +0200 | ripspin | (~chatzilla@1.145.170.49) (Read error: Connection reset by peer) |
2023-07-11 08:21:09 +0200 | jonathan | (~jonathan@c83-252-3-92.bredband.tele2.se) |
2023-07-11 08:28:08 +0200 | ell | (~ellie@user/ellie) (Quit: Leaving) |
2023-07-11 08:28:55 +0200 | ell | (~ellie@user/ellie) |
2023-07-11 08:29:01 +0200 | neuroevolutus | (~neuroevol@2001:ac8:9a:76::1e) |
2023-07-11 08:29:23 +0200 | shriekingnoise | (~shrieking@186.137.175.87) |
2023-07-11 08:30:48 +0200 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
2023-07-11 08:31:30 +0200 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) (Ping timeout: 250 seconds) |
2023-07-11 08:33:25 +0200 | falafel_ | (~falafel@2603-7000-a700-8710-f5d5-ad04-474a-6450.res6.spectrum.com) (Ping timeout: 240 seconds) |
2023-07-11 08:36:30 +0200 | theodorc | (theodorc@cassarossa.samfundet.no) (Quit: WeeChat 3.0) |
2023-07-11 08:36:41 +0200 | teddyc | (theodorc@cassarossa.samfundet.no) |
2023-07-11 08:38:59 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 08:42:17 +0200 | <Axman6> | wtf, why are variables defined in python for loops in scope outside the loop! wtf is this madness! |
2023-07-11 08:43:02 +0200 | qqq | (~qqq@92.43.167.61) (Remote host closed the connection) |
2023-07-11 08:43:14 +0200 | dcoutts | (~duncan@195.80.64.243) |
2023-07-11 08:43:29 +0200 | <Axman6> | also, why on earth can't you specify the types of the results when a method returns a tuple, this is insanity |
2023-07-11 08:44:20 +0200 | <Axman6> | x: int = f(7) -- totally fine, x; int, y: int = f(7) -- excuse me wtf do you think you're doing??? |
2023-07-11 08:44:44 +0200 | caryhartline | (~caryhartl@168.182.58.169) (Quit: caryhartline) |
2023-07-11 08:46:53 +0200 | michalz | (~michalz@185.246.207.221) |
2023-07-11 08:47:47 +0200 | neuroevolutus | (~neuroevol@2001:ac8:9a:76::1e) (Quit: Client closed) |
2023-07-11 08:50:53 +0200 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
2023-07-11 08:51:55 +0200 | shriekingnoise | (~shrieking@186.137.175.87) (Ping timeout: 240 seconds) |
2023-07-11 08:53:10 +0200 | Vajb | (~Vajb@85-76-167-107-nat.elisa-mobile.fi) (Ping timeout: 250 seconds) |
2023-07-11 08:53:41 +0200 | zeenk | (~zeenk@2a02:2f04:a00b:1800::7fe) |
2023-07-11 08:55:58 +0200 | Vajb | (~Vajb@2001:999:480:2329:e191:822:3665:ff4f) |
2023-07-11 08:56:24 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 246 seconds) |
2023-07-11 08:56:26 +0200 | dobblego | (~dibblego@116-255-1-157.ip4.superloop.au) |
2023-07-11 08:56:26 +0200 | dobblego | (~dibblego@116-255-1-157.ip4.superloop.au) (Changing host) |
2023-07-11 08:56:26 +0200 | dobblego | (~dibblego@haskell/developer/dibblego) |
2023-07-11 08:56:59 +0200 | dobblego | dibblego |
2023-07-11 08:57:31 +0200 | <monochrom> | Python is a scripting language. Definition: A scripting language leaks inner variables into outer scopes. Examples: shell, python. |
2023-07-11 08:57:55 +0200 | <monochrom> | basic. :) |
2023-07-11 09:01:46 +0200 | fendor | (~fendor@2a02:8388:1640:be00:821b:25b5:c8f3:73a0) |
2023-07-11 09:04:24 +0200 | <tomsmeding> | monochrom: also JS |
2023-07-11 09:04:44 +0200 | <tomsmeding> | with the classic 'var' notation in any case; modern (ES6) let/const are more well-behaved |
2023-07-11 09:05:12 +0200 | <tomsmeding> | furthermore, in JS if you declare a variable with 'var' anywhere in the function, it will be in scope in the _entire_ function, with value 'undefined' before its first assignment |
2023-07-11 09:05:35 +0200 | <tomsmeding> | Axman6: types are not checked in python, they are documentation only |
2023-07-11 09:05:50 +0200 | <tomsmeding> | if you want them checked, you need to use an external type checker like mypy (there are more, I just forget their names) |
2023-07-11 09:06:11 +0200 | <tomsmeding> | oh you're talking about syntax |
2023-07-11 09:06:14 +0200 | <tomsmeding> | ¯\_(ツ)_/¯ |
2023-07-11 09:07:47 +0200 | <tomsmeding> | corollary of the JS behaviour is that in JS, 'i = 10; (function() { i = 20; })(); console.log(i)' will print 20, whereas 'i = 10; (function() { i = 20; var i; })(); console.log(i)' will print 10 |
2023-07-11 09:08:21 +0200 | <dminuoso> | tomsmeding: It's really lovely to see static types being added after the fact, but without any type checker. |
2023-07-11 09:08:35 +0200 | <tomsmeding> | yes |
2023-07-11 09:08:36 +0200 | <dminuoso> | Its smells of one huge compromise. |
2023-07-11 09:08:44 +0200 | <tomsmeding> | kinda like rain |
2023-07-11 09:08:52 +0200 | <tomsmeding> | it's fun and games as long as I don't have to be in it |
2023-07-11 09:09:30 +0200 | <dminuoso> | Rain at least has generally good impact on everyone, even if individually people may dislike it. |
2023-07-11 09:09:41 +0200 | <dminuoso> | But I suppose the same can be said about static type checking. |
2023-07-11 09:09:48 +0200 | <tomsmeding> | true :P I don't dislike rain, I just dislike getting drenched often |
2023-07-11 09:10:00 +0200 | <tomsmeding> | :) |
2023-07-11 09:11:38 +0200 | <dminuoso> | It's strangely absurd, because it imposes extra syntax but without any benefit. And without an actual type checker, there isn't even semantics to any of it. |
2023-07-11 09:12:05 +0200 | <dminuoso> | I wouldn't be surprised if there's gross misuses of it, where people embed just data for metaprogramming into type hints. |
2023-07-11 09:12:17 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2023-07-11 09:12:34 +0200 | <tomsmeding> | dminuoso: the "without any benefit" is not really true, because people _do_ use external type checkers |
2023-07-11 09:12:49 +0200 | <dminuoso> | But I suppose its near impossible to add a type system after the fact, especially if there have been decades of dynamic/metaprogramming features. |
2023-07-11 09:13:01 +0200 | <tomsmeding> | at the very least people using python IDEs (yes, those are a thing) benefit from type annotations in the standard library |
2023-07-11 09:13:24 +0200 | <dminuoso> | tomsmeding: And what if two type checkers disagree on whether a given code type checks? |
2023-07-11 09:13:27 +0200 | <dminuoso> | Which one is right? |
2023-07-11 09:13:30 +0200 | <tomsmeding> | see also typescript and Flow and their distinct type systems |
2023-07-11 09:13:45 +0200 | <dminuoso> | In case of flow, its all embeddable as comments at least. |
2023-07-11 09:13:50 +0200 | <dminuoso> | Which is very non-intrusive |
2023-07-11 09:14:00 +0200 | <tomsmeding> | dminuoso: IIRC the spec for the python type annotations define a semantics for them |
2023-07-11 09:14:06 +0200 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 4.0.1) |
2023-07-11 09:14:06 +0200 | dhil | (~dhil@78.45.150.83.ewm.ftth.as8758.net) |
2023-07-11 09:14:07 +0200 | <tomsmeding> | which is undecidable or so |
2023-07-11 09:14:23 +0200 | <dminuoso> | What exactly is undecidable? |
2023-07-11 09:14:34 +0200 | <tomsmeding> | union types and madness |
2023-07-11 09:14:44 +0200 | <dminuoso> | Ah well, I guess my mood has nothing to with type systems. I just dont want to fight freeradius today. |
2023-07-11 09:15:09 +0200 | <tomsmeding> | hence if two type checkers terminate on a particular python program, they will reach the same conclusion -- or so I remember, I may be wrong |
2023-07-11 09:15:30 +0200 | <tomsmeding> | different type checkers _do_ use different algorithms and hence can typecheck different programs though, iirc |
2023-07-11 09:15:41 +0200 | <tomsmeding> | dminuoso: but it's free? |
2023-07-11 09:15:53 +0200 | <dminuoso> | It's free of many things, yes. |
2023-07-11 09:15:56 +0200 | <tomsmeding> | :) |
2023-07-11 09:17:55 +0200 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 240 seconds) |
2023-07-11 09:19:08 +0200 | acidjnk | (~acidjnk@p200300d6e7072f974de2c6538d982a41.dip0.t-ipconnect.de) |
2023-07-11 09:24:06 +0200 | qqq | (~qqq@92.43.167.61) |
2023-07-11 09:29:42 +0200 | aforemny_ | aforemny |
2023-07-11 09:29:57 +0200 | ripspin | (~chatzilla@1.145.164.87) |
2023-07-11 09:31:17 +0200 | neuroevolutus | (~neuroevol@2001:ac8:9a:76::1e) |
2023-07-11 09:33:04 +0200 | neuroevolutus | (~neuroevol@2001:ac8:9a:76::1e) (Client Quit) |
2023-07-11 09:39:12 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 09:41:20 +0200 | christiansen | (~christian@188-177-16-45-dynamic.dk.customer.tdc.net) |
2023-07-11 09:42:02 +0200 | christiansen | (~christian@188-177-16-45-dynamic.dk.customer.tdc.net) (Client Quit) |
2023-07-11 09:42:16 +0200 | christiansen | (~christian@188-177-16-45-dynamic.dk.customer.tdc.net) |
2023-07-11 09:42:22 +0200 | gurkenglas | (~gurkengla@dynamic-002-247-243-191.2.247.pool.telefonica.de) |
2023-07-11 09:42:30 +0200 | hisa38773 | (~hisa38@104-181-102-238.lightspeed.wepbfl.sbcglobal.net) |
2023-07-11 09:43:55 +0200 | hisa3877 | (~hisa38@104-181-102-238.lightspeed.wepbfl.sbcglobal.net) (Ping timeout: 240 seconds) |
2023-07-11 09:43:55 +0200 | hisa38773 | hisa3877 |
2023-07-11 09:46:04 +0200 | gmg | (~user@user/gehmehgeh) |
2023-07-11 09:48:58 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
2023-07-11 09:49:29 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2023-07-11 09:50:39 +0200 | dcoutts | (~duncan@195.80.64.243) (Ping timeout: 246 seconds) |
2023-07-11 09:53:48 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 246 seconds) |
2023-07-11 09:54:47 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
2023-07-11 10:00:20 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 10:03:03 +0200 | gmg | (~user@user/gehmehgeh) (Quit: Leaving) |
2023-07-11 10:04:55 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 240 seconds) |
2023-07-11 10:07:40 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2023-07-11 10:08:07 +0200 | dobblego | (~dibblego@116-255-1-157.ip4.superloop.au) |
2023-07-11 10:08:07 +0200 | dobblego | (~dibblego@116-255-1-157.ip4.superloop.au) (Changing host) |
2023-07-11 10:08:07 +0200 | dobblego | (~dibblego@haskell/developer/dibblego) |
2023-07-11 10:08:46 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 245 seconds) |
2023-07-11 10:12:28 +0200 | dobblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 250 seconds) |
2023-07-11 10:15:44 +0200 | CiaoSen | (~Jura@2a05:5800:29a:f00:664b:f0ff:fe37:9ef) |
2023-07-11 10:16:38 +0200 | dibblego | (~dibblego@116-255-1-157.ip4.superloop.au) |
2023-07-11 10:16:38 +0200 | dibblego | (~dibblego@116-255-1-157.ip4.superloop.au) (Changing host) |
2023-07-11 10:16:38 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) |
2023-07-11 10:19:02 +0200 | christiansen | (~christian@188-177-16-45-dynamic.dk.customer.tdc.net) () |
2023-07-11 10:19:02 +0200 | rainbyte | (~rainbyte@181.31.239.226) (Ping timeout: 252 seconds) |
2023-07-11 10:19:54 +0200 | m1dnight | (~christoph@78-22-4-67.access.telenet.be) (Write error: Connection reset by peer) |
2023-07-11 10:21:09 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
2023-07-11 10:21:26 +0200 | titibandit | (~titibandi@user/titibandit) |
2023-07-11 10:21:26 +0200 | danse-nr3 | (~francesco@151.37.235.112) |
2023-07-11 10:23:33 +0200 | Tuplanolla | (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) |
2023-07-11 10:28:11 +0200 | m1dnight | (~christoph@78-22-4-67.access.telenet.be) |
2023-07-11 10:29:11 +0200 | oneeyedalien | (~oneeyedal@user/oneeyedalien) |
2023-07-11 10:29:47 +0200 | YoungFrog | (~youngfrog@2a02:a03f:ca07:f900:c0d1:a78f:f0d6:915b) (Ping timeout: 246 seconds) |
2023-07-11 10:38:47 +0200 | tv1 | (~tv@user/tv) |
2023-07-11 10:38:50 +0200 | tv1 | (~tv@user/tv) (Client Quit) |
2023-07-11 10:38:58 +0200 | econo_ | (uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity) |
2023-07-11 10:39:06 +0200 | tv1 | (~tv@user/tv) |
2023-07-11 10:39:38 +0200 | tv | (~tv@user/tv) (Ping timeout: 260 seconds) |
2023-07-11 10:41:55 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 240 seconds) |
2023-07-11 10:42:36 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2023-07-11 10:46:10 +0200 | notzmv | (~zmv@user/notzmv) (Ping timeout: 260 seconds) |
2023-07-11 10:46:16 +0200 | JimL | (~quassel@89.162.16.26) (Ping timeout: 245 seconds) |
2023-07-11 10:47:22 +0200 | oneeyedalien | (~oneeyedal@user/oneeyedalien) (Quit: Leaving) |
2023-07-11 10:47:52 +0200 | misterfish | (~misterfis@87.215.131.102) |
2023-07-11 10:49:23 +0200 | JimL | (~quassel@89.162.16.26) |
2023-07-11 10:50:37 +0200 | gurkenglas | (~gurkengla@dynamic-002-247-243-191.2.247.pool.telefonica.de) (Read error: Connection reset by peer) |
2023-07-11 10:51:59 +0200 | ft | (~ft@p508db151.dip0.t-ipconnect.de) (Quit: leaving) |
2023-07-11 10:53:16 +0200 | tv1 | (~tv@user/tv) (Quit: derp) |
2023-07-11 10:53:30 +0200 | tv | (~tv@user/tv) |
2023-07-11 10:55:48 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 11:00:45 +0200 | m1dnight | (~christoph@78-22-4-67.access.telenet.be) (Quit: WeeChat 4.0.1) |
2023-07-11 11:00:47 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2023-07-11 11:01:11 +0200 | m1dnight | (~christoph@78-22-4-67.access.telenet.be) |
2023-07-11 11:05:02 +0200 | meinside | (uid24933@id-24933.helmsley.irccloud.com) |
2023-07-11 11:05:19 +0200 | Batzy | (~quassel@user/batzy) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2023-07-11 11:05:47 +0200 | Batzy | (~quassel@user/batzy) |
2023-07-11 11:14:32 +0200 | Batzy | (~quassel@user/batzy) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2023-07-11 11:15:24 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 11:15:47 +0200 | Batzy | (~quassel@user/batzy) |
2023-07-11 11:16:11 +0200 | Sciencentistguy4 | (~sciencent@hacksoc/ordinary-member) |
2023-07-11 11:17:48 +0200 | Sciencentistguy | (~sciencent@hacksoc/ordinary-member) (Ping timeout: 246 seconds) |
2023-07-11 11:17:48 +0200 | Sciencentistguy4 | Sciencentistguy |
2023-07-11 11:21:55 +0200 | CiaoSen | (~Jura@2a05:5800:29a:f00:664b:f0ff:fe37:9ef) (Ping timeout: 240 seconds) |
2023-07-11 11:29:47 +0200 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2023-07-11 11:30:45 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 246 seconds) |
2023-07-11 11:31:08 +0200 | Lord_of_Life_ | Lord_of_Life |
2023-07-11 11:32:27 +0200 | jespada | (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Read error: Connection reset by peer) |
2023-07-11 11:33:04 +0200 | jespada | (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) |
2023-07-11 11:33:58 +0200 | bitmapper | (uid464869@id-464869.lymington.irccloud.com) |
2023-07-11 11:34:35 +0200 | emmanuelux | (~emmanuelu@user/emmanuelux) (Quit: au revoir) |
2023-07-11 11:35:53 +0200 | gurkenglas | (~gurkengla@dynamic-002-247-243-191.2.247.pool.telefonica.de) |
2023-07-11 11:36:00 +0200 | auri | (~auri@fsf/member/auri) (Remote host closed the connection) |
2023-07-11 11:38:20 +0200 | auri | (~auri@fsf/member/auri) |
2023-07-11 11:47:14 +0200 | mmhat | (~mmh@p200300f1c74f8624ee086bfffe095315.dip0.t-ipconnect.de) |
2023-07-11 11:47:55 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 240 seconds) |
2023-07-11 11:51:21 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2023-07-11 11:53:56 +0200 | mmhat | (~mmh@p200300f1c74f8624ee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 4.0.1) |
2023-07-11 11:55:34 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:4c9c:5689:ea96:76a1) (Remote host closed the connection) |
2023-07-11 11:55:47 +0200 | raym | (~ray@user/raym) (Ping timeout: 264 seconds) |
2023-07-11 12:00:56 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 12:02:10 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 12:05:55 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 240 seconds) |
2023-07-11 12:07:06 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
2023-07-11 12:10:08 +0200 | jsomedon | (uid606872@id-606872.hampstead.irccloud.com) |
2023-07-11 12:11:43 +0200 | jsomedon | (uid606872@id-606872.hampstead.irccloud.com) () |
2023-07-11 12:11:55 +0200 | jsomedon | (uid606872@id-606872.hampstead.irccloud.com) |
2023-07-11 12:12:06 +0200 | jmdaemon | (~jmdaemon@user/jmdaemon) (Ping timeout: 245 seconds) |
2023-07-11 12:16:56 +0200 | <jackdk> | Axman6: "why are variables defined in python for loops in scope outside the loop!?" <- to understand the behaviour of a Python program, you must understand the mindset of a busy C programmer writing a language runtime. And getting lexical scope and closures right is haaard, man. (the lua paper has a cool technique for this) |
2023-07-11 12:25:25 +0200 | danse-nr3 | thinks that apparently that mindset proved out to be quite successful |
2023-07-11 12:26:31 +0200 | <jackdk> | Hard to argue with its reach, that's for certain, and it explains much (particularly 2.x era warts): leaky variable scopes, old-style classes, `print` statements, etc. |
2023-07-11 12:29:25 +0200 | <danse-nr3> | old-style classes would be those adopted by typescript recently, right? Just object-oriented classes |
2023-07-11 12:36:40 +0200 | <jackdk> | Not sure about TS but in older versions of python any object instance `x`, regardless of class, would return `type(x) = <type 'instance'>`: https://stackoverflow.com/questions/54867/what-is-the-difference-between-old-style-and-new-style-c… |
2023-07-11 12:37:33 +0200 | <danse-nr3> | oh, i see what you mean. But then they found a way to step out of it |
2023-07-11 12:39:18 +0200 | smalltalkman | (uid545680@id-545680.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
2023-07-11 12:39:21 +0200 | <danse-nr3> | although all those class models all look old-style to me =D |
2023-07-11 12:45:05 +0200 | __monty__ | (~toonn@user/toonn) |
2023-07-11 12:48:13 +0200 | danse-nr3 | (~francesco@151.37.235.112) (Remote host closed the connection) |
2023-07-11 12:48:37 +0200 | danse-nr3 | (~francesco@151.37.235.112) |
2023-07-11 12:56:03 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:4c9c:5689:ea96:76a1) |
2023-07-11 12:59:48 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 13:00:04 +0200 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
2023-07-11 13:00:25 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:4c9c:5689:ea96:76a1) (Ping timeout: 240 seconds) |
2023-07-11 13:04:10 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:e50d:8961:b963:9f54) |
2023-07-11 13:05:55 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 240 seconds) |
2023-07-11 13:08:25 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:e50d:8961:b963:9f54) (Ping timeout: 240 seconds) |
2023-07-11 13:08:55 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 240 seconds) |
2023-07-11 13:11:40 +0200 | m1dnight | (~christoph@78-22-4-67.access.telenet.be) (Quit: WeeChat 4.0.1) |
2023-07-11 13:14:38 +0200 | qqq | (~qqq@92.43.167.61) (Remote host closed the connection) |
2023-07-11 13:16:07 +0200 | dibblego | (~dibblego@116-255-1-157.ip4.superloop.au) |
2023-07-11 13:16:07 +0200 | Guest17 | (~Guest17@p200300ef9728cc4f4f46d74fc2265874.dip0.t-ipconnect.de) |
2023-07-11 13:16:07 +0200 | dibblego | (~dibblego@116-255-1-157.ip4.superloop.au) (Changing host) |
2023-07-11 13:16:07 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) |
2023-07-11 13:20:59 +0200 | danse-nr3 | (~francesco@151.37.235.112) (Ping timeout: 264 seconds) |
2023-07-11 13:21:18 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 13:22:02 +0200 | fendor | (~fendor@2a02:8388:1640:be00:821b:25b5:c8f3:73a0) (Ping timeout: 260 seconds) |
2023-07-11 13:22:26 +0200 | Guest17 | (~Guest17@p200300ef9728cc4f4f46d74fc2265874.dip0.t-ipconnect.de) (Quit: Client closed) |
2023-07-11 13:22:47 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 13:22:55 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 240 seconds) |
2023-07-11 13:24:19 +0200 | m1dnight | (~christoph@78-22-4-67.access.telenet.be) |
2023-07-11 13:25:05 +0200 | CiaoSen | (~Jura@2a05:5800:29a:f00:664b:f0ff:fe37:9ef) |
2023-07-11 13:27:05 +0200 | m21it | (~m21it@2800:ac:4051:7621:fd87:d5eb:4b00:5f0b) |
2023-07-11 13:27:26 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 246 seconds) |
2023-07-11 13:27:42 +0200 | dibblego | (~dibblego@116-255-1-157.ip4.superloop.au) |
2023-07-11 13:27:42 +0200 | dibblego | (~dibblego@116-255-1-157.ip4.superloop.au) (Changing host) |
2023-07-11 13:27:42 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) |
2023-07-11 13:29:55 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 240 seconds) |
2023-07-11 13:32:25 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 240 seconds) |
2023-07-11 13:33:36 +0200 | fendor | (~fendor@2a02:8388:1640:be00:821b:25b5:c8f3:73a0) |
2023-07-11 13:36:55 +0200 | dibblego | (~dibblego@116.255.1.157) |
2023-07-11 13:36:56 +0200 | dibblego | (~dibblego@116.255.1.157) (Changing host) |
2023-07-11 13:36:56 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) |
2023-07-11 13:37:46 +0200 | danse-nr3 | (~francesco@151.37.235.112) |
2023-07-11 13:38:49 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2023-07-11 13:40:55 +0200 | euandreh | (~Thunderbi@189.6.18.7) (Ping timeout: 240 seconds) |
2023-07-11 13:42:13 +0200 | <dminuoso> | jackdk: In some way, it is simpler to tie lexical scope to the implementation. So any resulting implementation artifacts, like setting up variables at the beginning of a stack frame (potentially hoisting variable definitions to the beginning of a function) and keeping them alive forever, is just relatively simple. |
2023-07-11 13:43:34 +0200 | m21it | (~m21it@2800:ac:4051:7621:fd87:d5eb:4b00:5f0b) (Remote host closed the connection) |
2023-07-11 13:43:52 +0200 | m21it | (~m21it@2800:ac:4051:7621:fd87:d5eb:4b00:5f0b) |
2023-07-11 13:45:27 +0200 | m5zs7k | (aquares@web10.mydevil.net) (Ping timeout: 245 seconds) |
2023-07-11 13:46:28 +0200 | <dminuoso> | But I guess thats just a more detailed account of the "mindset of a busy C programmer writing a language runtime" |
2023-07-11 13:47:08 +0200 | m5zs7k | (aquares@web10.mydevil.net) |
2023-07-11 13:53:32 +0200 | glguy | (~glguy@libera/staff-emeritus/glguy) (Ping timeout: 252 seconds) |
2023-07-11 13:54:33 +0200 | glguy | (~glguy@libera/staff-emeritus/glguy) |
2023-07-11 13:56:29 +0200 | zmt00 | (~zmt00@user/zmt00) (Ping timeout: 246 seconds) |
2023-07-11 13:57:27 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 14:01:51 +0200 | danse-nr3 | (~francesco@151.37.235.112) (Read error: Connection reset by peer) |
2023-07-11 14:02:08 +0200 | danse-nr3 | (~francesco@151.47.247.209) |
2023-07-11 14:08:06 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
2023-07-11 14:10:41 +0200 | dsrt^ | (~cd@24.125.210.85) |
2023-07-11 14:11:34 +0200 | mei | (~mei@user/mei) (Remote host closed the connection) |
2023-07-11 14:13:58 +0200 | mei | (~mei@user/mei) |
2023-07-11 14:14:39 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 14:18:55 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 240 seconds) |
2023-07-11 14:19:11 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 245 seconds) |
2023-07-11 14:19:54 +0200 | jsomedon | (uid606872@id-606872.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
2023-07-11 14:30:56 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2023-07-11 14:37:22 +0200 | Midjak | (~Midjak@82.66.147.146) |
2023-07-11 14:37:45 +0200 | igghibu | (~igghibu@178.249.211.83) |
2023-07-11 14:49:09 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Remote host closed the connection) |
2023-07-11 14:49:09 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
2023-07-11 14:49:09 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2023-07-11 14:49:09 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection) |
2023-07-11 14:49:09 +0200 | chiselfuse | (~chiselfus@user/chiselfuse) (Remote host closed the connection) |
2023-07-11 14:49:35 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) |
2023-07-11 14:49:38 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2023-07-11 14:49:38 +0200 | califax | (~califax@user/califx) |
2023-07-11 14:49:48 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2023-07-11 14:49:51 +0200 | chiselfuse | (~chiselfus@user/chiselfuse) |
2023-07-11 14:50:54 +0200 | m21it | (~m21it@2800:ac:4051:7621:fd87:d5eb:4b00:5f0b) (Remote host closed the connection) |
2023-07-11 14:51:06 +0200 | EvanR | (~EvanR@user/evanr) (Remote host closed the connection) |
2023-07-11 14:52:03 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 14:56:46 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 260 seconds) |
2023-07-11 14:57:11 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2023-07-11 14:57:45 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 14:59:58 +0200 | califax | (~califax@user/califx) (Ping timeout: 240 seconds) |
2023-07-11 15:00:52 +0200 | user___ | (~user@162.255.84.96) (Ping timeout: 240 seconds) |
2023-07-11 15:01:16 +0200 | user___ | (~user@162.255.84.96) |
2023-07-11 15:02:22 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2023-07-11 15:03:29 +0200 | califax | (~califax@user/califx) |
2023-07-11 15:06:24 +0200 | dibblego | (~dibblego@116-255-1-157.ip4.superloop.au) |
2023-07-11 15:06:25 +0200 | dibblego | (~dibblego@116-255-1-157.ip4.superloop.au) (Changing host) |
2023-07-11 15:06:25 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) |
2023-07-11 15:07:35 +0200 | qqq | (~qqq@92.43.167.61) |
2023-07-11 15:09:47 +0200 | nick3 | (~nick@2600:8807:9084:7800:81a9:9ad8:11b2:d730) |
2023-07-11 15:10:50 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 246 seconds) |
2023-07-11 15:15:01 +0200 | bratwurst | (~dfadsva@2604:3d09:207f:f650::5b03) |
2023-07-11 15:15:47 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 15:17:11 +0200 | igghibu | (~igghibu@178.249.211.83) (Quit: igghibu) |
2023-07-11 15:17:32 +0200 | igghibu | (~igghibu@178.249.211.83) |
2023-07-11 15:18:31 +0200 | bliminse | (~bliminse@user/bliminse) |
2023-07-11 15:18:41 +0200 | igghibu | (~igghibu@178.249.211.83) (Client Quit) |
2023-07-11 15:19:05 +0200 | bratwurst | (~dfadsva@2604:3d09:207f:f650::5b03) (Ping timeout: 246 seconds) |
2023-07-11 15:20:26 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
2023-07-11 15:26:39 +0200 | Guest6127 | (~finn@rul16-h01-176-151-21-224.dsl.sta.abo.bbox.fr) |
2023-07-11 15:29:10 +0200 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) |
2023-07-11 15:30:33 +0200 | JimL | (~quassel@89.162.16.26) (Read error: Connection reset by peer) |
2023-07-11 15:30:51 +0200 | ystael | (~ystael@user/ystael) |
2023-07-11 15:31:06 +0200 | JimL | (~quassel@89.162.16.26) |
2023-07-11 15:31:21 +0200 | slack1256 | (~slack1256@186.11.16.55) |
2023-07-11 15:31:55 +0200 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) |
2023-07-11 15:31:55 +0200 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
2023-07-11 15:31:55 +0200 | wroathe | (~wroathe@user/wroathe) |
2023-07-11 15:36:49 +0200 | dibblego | (~dibblego@116-255-1-157.ip4.superloop.au) |
2023-07-11 15:36:50 +0200 | dibblego | (~dibblego@116-255-1-157.ip4.superloop.au) (Changing host) |
2023-07-11 15:36:50 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) |
2023-07-11 15:37:25 +0200 | acidjnk | (~acidjnk@p200300d6e7072f974de2c6538d982a41.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
2023-07-11 15:38:46 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 250 seconds) |
2023-07-11 15:47:29 +0200 | noscript | (~james@user/earldouglas) |
2023-07-11 15:48:02 +0200 | mankyKitty | (uid31287@id-31287.helmsley.irccloud.com) |
2023-07-11 15:48:05 +0200 | blueranger19811 | (~Adium@bzq-84-110-149-34.static-ip.bezeqint.net) |
2023-07-11 15:53:42 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 15:55:11 +0200 | zmt00 | (~zmt00@user/zmt00) |
2023-07-11 15:58:17 +0200 | <Inst> | wait, in Haskell, do we generally have a turing tax for monadic code? |
2023-07-11 15:58:21 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 245 seconds) |
2023-07-11 15:58:35 +0200 | <Inst> | i.e, one way to describe Haskell and FP is that in most languages, you pay a lambda tax because the compiler won't optimize your FP idioms for you |
2023-07-11 15:58:52 +0200 | <Inst> | in Haskell, you pay a turing tax because the compiler isn't that highly tuned toward optimizing your imperative idioms for you |
2023-07-11 15:59:07 +0200 | Benzi-Junior | (~BenziJuni@dsl-149-64-112.hive.is) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-07-11 16:00:53 +0200 | nick3 | (~nick@2600:8807:9084:7800:81a9:9ad8:11b2:d730) (Ping timeout: 246 seconds) |
2023-07-11 16:01:26 +0200 | blueranger1981 | (~user@bzq-84-110-149-34.static-ip.bezeqint.net) |
2023-07-11 16:02:20 +0200 | blueranger19811 | (~Adium@bzq-84-110-149-34.static-ip.bezeqint.net) () |
2023-07-11 16:03:34 +0200 | __monty_1 | (~toonn@user/toonn) |
2023-07-11 16:03:35 +0200 | __monty__ | (~toonn@user/toonn) (Ping timeout: 264 seconds) |
2023-07-11 16:04:21 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Quit: Lost terminal) |
2023-07-11 16:04:27 +0200 | <c_wraith> | the main overhead comes from (>>=) being hard to inline properly. There's nothing special about (>>=) per se, but it's often used in polymorphic contexts where the actual type isn't known, so it can't be inlined. |
2023-07-11 16:04:35 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection) |
2023-07-11 16:04:57 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2023-07-11 16:05:57 +0200 | <c_wraith> | an indirect function call being made between every pair of statements is a lot of overhead. |
2023-07-11 16:06:18 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:e50d:8961:b963:9f54) |
2023-07-11 16:07:14 +0200 | greentail | (~greentail@2804:214:8134:90eb:2d73:371:b52a:fc2f) |
2023-07-11 16:10:32 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:e50d:8961:b963:9f54) (Ping timeout: 246 seconds) |
2023-07-11 16:11:41 +0200 | shriekingnoise | (~shrieking@186.137.175.87) |
2023-07-11 16:12:48 +0200 | Benzi-Junior | (~BenziJuni@dsl-149-64-112.hive.is) |
2023-07-11 16:13:27 +0200 | <Axman6> | I would take the overhead of Either any day over the noise of things like Go's error handling. "it's not overhead if you wrote it yourself" |
2023-07-11 16:13:52 +0200 | mechap | (~mechap@user/mechap) (Quit: WeeChat 4.0.1) |
2023-07-11 16:13:58 +0200 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) |
2023-07-11 16:14:46 +0200 | greentail | (~greentail@2804:214:8134:90eb:2d73:371:b52a:fc2f) (Changing host) |
2023-07-11 16:14:46 +0200 | greentail | (~greentail@user/clcuc) |
2023-07-11 16:14:56 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 16:18:06 +0200 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 246 seconds) |
2023-07-11 16:20:25 +0200 | titibandit | (~titibandi@user/titibandit) (Ping timeout: 240 seconds) |
2023-07-11 16:25:25 +0200 | bontaq | (~user@ool-45779b84.dyn.optonline.net) |
2023-07-11 16:26:05 +0200 | nick3 | (~nick@2600:100d:b11d:748c:b1a8:2825:98de:468) |
2023-07-11 16:27:46 +0200 | vgtw | (~vgtw@user/vgtw) (Ping timeout: 260 seconds) |
2023-07-11 16:27:47 +0200 | vgtw_ | (~vgtw@user/vgtw) |
2023-07-11 16:28:45 +0200 | acidjnk | (~acidjnk@p200300d6e7072f97d49128753c394ff8.dip0.t-ipconnect.de) |
2023-07-11 16:29:55 +0200 | titibandit | (~titibandi@user/titibandit) |
2023-07-11 16:31:30 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 16:32:39 +0200 | igghibu | (~igghibu@178.249.211.83) |
2023-07-11 16:36:10 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 260 seconds) |
2023-07-11 16:36:27 +0200 | <danse-nr3> | c_wraith, is that the same overhead for all typeclass code? Due to dictionary lookup, i think |
2023-07-11 16:37:57 +0200 | <c_wraith> | danse-nr3: sometimes. Monadic code is more likely to contain indefinite loops in polymorphic contexts than most typeclass-based code. |
2023-07-11 16:38:05 +0200 | igghibu | (~igghibu@178.249.211.83) (Quit: igghibu) |
2023-07-11 16:38:26 +0200 | igghibu | (~igghibu@178.249.211.83) |
2023-07-11 16:39:21 +0200 | <c_wraith> | The underlying problem is a potential issue anywhere, but due to usage patterns it tends to show up more often with >>= |
2023-07-11 16:39:36 +0200 | <danse-nr3> | i see, thanks |
2023-07-11 16:40:33 +0200 | Angelz | (Angelz@2605:6400:30:fc15:9bd1:2217:41cd:bb15) (Remote host closed the connection) |
2023-07-11 16:41:02 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 245 seconds) |
2023-07-11 16:41:19 +0200 | igghibu | (~igghibu@178.249.211.83) (Client Quit) |
2023-07-11 16:42:22 +0200 | danso | (~danso@user/danso) (Quit: quittin time) |
2023-07-11 16:42:40 +0200 | hisa38773 | (~hisa38@104-181-102-238.lightspeed.wepbfl.sbcglobal.net) |
2023-07-11 16:44:13 +0200 | danso | (~danso@user/danso) |
2023-07-11 16:44:46 +0200 | hisa3877 | (~hisa38@104-181-102-238.lightspeed.wepbfl.sbcglobal.net) (Ping timeout: 252 seconds) |
2023-07-11 16:44:47 +0200 | hisa38773 | hisa3877 |
2023-07-11 16:45:19 +0200 | Angelz | (Angelz@2605:6400:30:fc15:9bd1:2217:41cd:bb15) |
2023-07-11 16:49:23 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2023-07-11 16:52:47 +0200 | t1noname | (~mark@89.209.156.65) |
2023-07-11 16:55:10 +0200 | t1noname | (~mark@89.209.156.65) (Client Quit) |
2023-07-11 16:58:30 +0200 | misterfish | (~misterfis@87.215.131.102) (Ping timeout: 250 seconds) |
2023-07-11 17:01:41 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 17:06:16 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 245 seconds) |
2023-07-11 17:20:27 +0200 | gaff | (~gaff@49.207.196.249) |
2023-07-11 17:20:34 +0200 | gaff | (~gaff@49.207.196.249) (Client Quit) |
2023-07-11 17:23:19 +0200 | __monty_1 | __monty__ |
2023-07-11 17:27:10 +0200 | nyc | (~nyc@user/nyc) (Read error: Connection reset by peer) |
2023-07-11 17:27:40 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 17:30:43 +0200 | thegeekinside | (~thegeekin@189.217.90.138) (Read error: Connection reset by peer) |
2023-07-11 17:32:56 +0200 | ddellacosta | (~ddellacos@143.244.47.100) (Ping timeout: 245 seconds) |
2023-07-11 17:33:25 +0200 | CiaoSen | (~Jura@2a05:5800:29a:f00:664b:f0ff:fe37:9ef) (Ping timeout: 240 seconds) |
2023-07-11 17:34:51 +0200 | ddellacosta | (~ddellacos@146.70.165.216) |
2023-07-11 17:34:53 +0200 | greentail | (~greentail@user/clcuc) (Ping timeout: 246 seconds) |
2023-07-11 17:35:26 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 245 seconds) |
2023-07-11 17:36:15 +0200 | lottaquestions | (~nick@2607:fa49:503d:b200:5acb:c775:e1cd:3a88) |
2023-07-11 17:36:21 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2023-07-11 17:38:13 +0200 | Inst | (~Inst@2601:6c4:4081:2fc0:ba:e9a2:9797:91e4) (Remote host closed the connection) |
2023-07-11 17:38:17 +0200 | dibblego | (~dibblego@116-255-1-157.ip4.superloop.au) |
2023-07-11 17:38:18 +0200 | dibblego | (~dibblego@116-255-1-157.ip4.superloop.au) (Changing host) |
2023-07-11 17:38:18 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) |
2023-07-11 17:38:35 +0200 | Inst | (~Inst@2601:6c4:4081:2fc0:ba:e9a2:9797:91e4) |
2023-07-11 17:39:49 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 17:40:11 +0200 | dhil | (~dhil@78.45.150.83.ewm.ftth.as8758.net) (Ping timeout: 264 seconds) |
2023-07-11 17:40:37 +0200 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) |
2023-07-11 17:41:11 +0200 | blueranger1981 | (~user@bzq-84-110-149-34.static-ip.bezeqint.net) (Ping timeout: 246 seconds) |
2023-07-11 17:41:41 +0200 | greentail | (~greentail@2804:214:8110:b833:f96b:ef29:522c:c720) |
2023-07-11 17:41:46 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 17:44:12 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 246 seconds) |
2023-07-11 17:44:19 +0200 | cheater | (~Username@user/cheater) (Quit: Going offline, see ya! (www.adiirc.com)) |
2023-07-11 17:44:54 +0200 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 246 seconds) |
2023-07-11 17:45:12 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 245 seconds) |
2023-07-11 17:45:51 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:b51c:90a2:c6ee:ffbb) |
2023-07-11 17:46:39 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2023-07-11 17:47:08 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2023-07-11 17:48:55 +0200 | danse-nr3 | (~francesco@151.47.247.209) (Ping timeout: 240 seconds) |
2023-07-11 17:50:32 +0200 | nick3 | (~nick@2600:100d:b11d:748c:b1a8:2825:98de:468) (Ping timeout: 240 seconds) |
2023-07-11 17:50:45 +0200 | Everything | (~Everythin@static.208.206.21.65.clients.your-server.de) (Ping timeout: 258 seconds) |
2023-07-11 17:51:11 +0200 | nick3 | (~nick@2600:100d:b112:5e5:202b:3d45:9260:a8d0) |
2023-07-11 17:52:56 +0200 | Angelz | (Angelz@2605:6400:30:fc15:9bd1:2217:41cd:bb15) (Remote host closed the connection) |
2023-07-11 17:55:22 +0200 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) |
2023-07-11 17:56:04 +0200 | turlando | (~turlando@user/turlando) |
2023-07-11 17:56:04 +0200 | slac87842 | (~slack1256@191.125.44.98) |
2023-07-11 17:57:07 +0200 | Angelz | (Angelz@angelz.oddprotocol.org) |
2023-07-11 17:57:44 +0200 | mankyKitty | (uid31287@id-31287.helmsley.irccloud.com) (Quit: Connection closed for inactivity) |
2023-07-11 17:58:18 +0200 | slack1256 | (~slack1256@186.11.16.55) (Ping timeout: 250 seconds) |
2023-07-11 17:58:47 +0200 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
2023-07-11 17:59:34 +0200 | mauke | (~mauke@user/mauke) |
2023-07-11 18:01:18 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds) |
2023-07-11 18:01:36 +0200 | Angelz | (Angelz@angelz.oddprotocol.org) (Client Quit) |
2023-07-11 18:02:03 +0200 | ddellacosta | (~ddellacos@146.70.165.216) (Ping timeout: 246 seconds) |
2023-07-11 18:03:06 +0200 | ddellacosta | (~ddellacos@146.70.165.216) |
2023-07-11 18:04:45 +0200 | <nick3> | I'm using blaze-html to mark up some html, and I want to iterate through a list of options to generate option elements for a select element. However, I can't figure out why it keeps saying the type is Markup () instead of Html (which looks to be the same thing in the source of blaze to me ...). The error I keep getting is Couldn't match type: blaze-markup-0.8.2.8:Text.Blaze.Internal.MarkupM and my |
2023-07-11 18:04:47 +0200 | <nick3> | code is here: https://paste.tomsmeding.com/S3yVShLi |
2023-07-11 18:10:17 +0200 | bilegeek | (~bilegeek@2600:1008:b03e:10a5:9b85:f00c:17bb:a9c) |
2023-07-11 18:10:40 +0200 | Angelz | (Angelz@2605:6400:30:fc15:d55b:fa6c:bd14:9973) |
2023-07-11 18:10:58 +0200 | thegeekinside | (~thegeekin@189.217.90.138) |
2023-07-11 18:11:14 +0200 | Everything | (~Everythin@static.208.206.21.65.clients.your-server.de) |
2023-07-11 18:11:52 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 245 seconds) |
2023-07-11 18:11:58 +0200 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
2023-07-11 18:12:04 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2023-07-11 18:12:06 +0200 | dibblego | (~dibblego@116-255-1-157.ip4.superloop.au) |
2023-07-11 18:12:06 +0200 | dibblego | (~dibblego@116-255-1-157.ip4.superloop.au) (Changing host) |
2023-07-11 18:12:06 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) |
2023-07-11 18:13:51 +0200 | econo_ | (uid147250@id-147250.tinside.irccloud.com) |
2023-07-11 18:13:52 +0200 | Angelz | (Angelz@2605:6400:30:fc15:d55b:fa6c:bd14:9973) (Client Quit) |
2023-07-11 18:16:16 +0200 | Angelz | (Angelz@angelz.oddprotocol.org) |
2023-07-11 18:16:41 +0200 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
2023-07-11 18:20:48 +0200 | <c_wraith> | nick3: when it's including package versions in type errors, that means you have two different versions of the same package involved |
2023-07-11 18:22:21 +0200 | <mauke> | nick3: what's the error message? |
2023-07-11 18:22:34 +0200 | ddellacosta | (~ddellacos@146.70.165.216) (Ping timeout: 250 seconds) |
2023-07-11 18:22:41 +0200 | <c_wraith> | nick3: I strongly recommend using modern library management instead of `cabal install --lib' stuff |
2023-07-11 18:24:25 +0200 | ddellacosta | (~ddellacos@146.70.165.100) |
2023-07-11 18:25:50 +0200 | nick3 | (~nick@2600:100d:b112:5e5:202b:3d45:9260:a8d0) (Ping timeout: 260 seconds) |
2023-07-11 18:26:58 +0200 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection) |
2023-07-11 18:30:01 +0200 | Guest6127 | (~finn@rul16-h01-176-151-21-224.dsl.sta.abo.bbox.fr) (Ping timeout: 245 seconds) |
2023-07-11 18:38:11 +0200 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2023-07-11 18:38:43 +0200 | titibandit | (~titibandi@user/titibandit) (Remote host closed the connection) |
2023-07-11 18:42:45 +0200 | Ligtht-1 | (~Ligtht@94.25.171.223) |
2023-07-11 18:44:06 +0200 | briandaed | (~briandaed@185.234.210.211) |
2023-07-11 18:44:11 +0200 | smalltalkman | (uid545680@id-545680.hampstead.irccloud.com) |
2023-07-11 18:44:47 +0200 | JimL | (~quassel@89.162.16.26) (Ping timeout: 245 seconds) |
2023-07-11 18:47:19 +0200 | Ligtht-1 | (~Ligtht@94.25.171.223) (Quit: Leaving) |
2023-07-11 18:48:12 +0200 | raym | (~ray@user/raym) |
2023-07-11 18:49:21 +0200 | JimL | (~quassel@89.162.16.26) |
2023-07-11 18:50:26 +0200 | dhil | (~dhil@78.45.150.83.ewm.ftth.as8758.net) |
2023-07-11 18:56:14 +0200 | dcoutts | (~duncan@195.80.64.243) |
2023-07-11 18:56:24 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
2023-07-11 18:57:52 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 18:58:07 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 19:00:17 +0200 | lainon | (~textual@2601:7c0:cb00:c0a0:68c0:c255:9c8b:3dd) |
2023-07-11 19:02:25 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 240 seconds) |
2023-07-11 19:02:36 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2023-07-11 19:02:54 +0200 | greentail | (~greentail@2804:214:8110:b833:f96b:ef29:522c:c720) (Changing host) |
2023-07-11 19:02:54 +0200 | greentail | (~greentail@user/clcuc) |
2023-07-11 19:11:25 +0200 | Vajb | (~Vajb@2001:999:480:2329:e191:822:3665:ff4f) (Ping timeout: 240 seconds) |
2023-07-11 19:11:51 +0200 | Vajb | (~Vajb@2001:999:480:2329:e191:822:3665:ff4f) |
2023-07-11 19:11:58 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2023-07-11 19:14:38 +0200 | briandaed | (~briandaed@185.234.210.211) (Remote host closed the connection) |
2023-07-11 19:19:41 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 19:20:52 +0200 | greentail | (~greentail@user/clcuc) (Read error: Connection reset by peer) |
2023-07-11 19:21:46 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2023-07-11 19:22:42 +0200 | greentail | (~greentail@2804:214:8134:90eb:2d73:371:b52a:fc2f) |
2023-07-11 19:22:45 +0200 | greentail | (~greentail@2804:214:8134:90eb:2d73:371:b52a:fc2f) (Changing host) |
2023-07-11 19:22:45 +0200 | greentail | (~greentail@user/clcuc) |
2023-07-11 19:23:27 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 19:24:41 +0200 | Guest7669 | (~finn@176-151-21-224.abo.bbox.fr) |
2023-07-11 19:25:22 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2023-07-11 19:33:58 +0200 | fendor | (~fendor@2a02:8388:1640:be00:821b:25b5:c8f3:73a0) (Remote host closed the connection) |
2023-07-11 19:36:20 +0200 | rainbyte | (~rainbyte@181.31.239.226) |
2023-07-11 19:40:06 +0200 | mixfix41 | (~sdeny9ee@user/mixfix41) |
2023-07-11 19:40:13 +0200 | elkcl | (~elkcl@broadband-95-84-180-37.ip.moscow.rt.ru) (Remote host closed the connection) |
2023-07-11 19:40:51 +0200 | elkcl | (~elkcl@broadband-95-84-180-37.ip.moscow.rt.ru) |
2023-07-11 19:43:53 +0200 | jmdaemon | (~jmdaemon@user/jmdaemon) |
2023-07-11 19:47:27 +0200 | falafel_ | (~falafel@2603-7000-a700-8710-5f49-cb4b-40df-fc3d.res6.spectrum.com) |
2023-07-11 19:53:06 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2023-07-11 20:00:26 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 245 seconds) |
2023-07-11 20:00:29 +0200 | lainon | (~textual@2601:7c0:cb00:c0a0:68c0:c255:9c8b:3dd) (Quit: My Mac has gone to sleep. ZZZzzz…) |
2023-07-11 20:11:47 +0200 | gmg | (~user@user/gehmehgeh) |
2023-07-11 20:13:57 +0200 | ripspin | (~chatzilla@1.145.164.87) (Remote host closed the connection) |
2023-07-11 20:14:34 +0200 | img | (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-07-11 20:15:19 +0200 | slac87842 | slack1256 |
2023-07-11 20:17:35 +0200 | img | (~img@user/img) |
2023-07-11 20:21:45 +0200 | cheater | (~Username@user/cheater) |
2023-07-11 20:21:45 +0200 | slack1256 | (~slack1256@191.125.44.98) (Read error: Connection reset by peer) |
2023-07-11 20:22:48 +0200 | hgolden | (~hgolden@2603-8000-9d00-3ed1-7b72-5998-97ad-985d.res6.spectrum.com) |
2023-07-11 20:23:50 +0200 | slack1256 | (~slack1256@186.11.22.183) |
2023-07-11 20:37:06 +0200 | qqq | (~qqq@92.43.167.61) (Remote host closed the connection) |
2023-07-11 20:42:59 +0200 | __monty__ | (~toonn@user/toonn) |
2023-07-11 20:50:48 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 20:54:14 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 20:55:27 +0200 | fweht | (uid404746@id-404746.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
2023-07-11 20:56:43 +0200 | cheater | (~Username@user/cheater) (Quit: Going offline, see ya! (www.adiirc.com)) |
2023-07-11 20:58:10 +0200 | greentail | (~greentail@user/clcuc) (Quit: Leaving) |
2023-07-11 21:00:55 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 240 seconds) |
2023-07-11 21:02:43 +0200 | ijqq_ | (uid603979@id-603979.helmsley.irccloud.com) |
2023-07-11 21:13:12 +0200 | motherfsck | (~motherfsc@user/motherfsck) |
2023-07-11 21:14:36 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 21:19:22 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 250 seconds) |
2023-07-11 21:23:45 +0200 | bitmapper | (uid464869@id-464869.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
2023-07-11 21:28:25 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 240 seconds) |
2023-07-11 21:31:08 +0200 | Deide_ | (~Deide@217.155.19.23) |
2023-07-11 21:34:28 +0200 | rburkholder | (~blurb@96.45.2.121) (Remote host closed the connection) |
2023-07-11 21:37:43 +0200 | danse-nr3 | (~francesco@151.57.226.137) |
2023-07-11 21:39:51 +0200 | nick3 | (~nick@2600:100d:b10c:c9f7:54d7:973d:6405:1a8) |
2023-07-11 21:40:02 +0200 | Deide_ | (~Deide@217.155.19.23) (Quit: Seeee yaaaa) |
2023-07-11 21:40:07 +0200 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
2023-07-11 21:49:33 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
2023-07-11 21:50:12 +0200 | lainon | (~textual@2601:7c0:cb00:c0a0:68c0:c255:9c8b:3dd) |
2023-07-11 21:51:08 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) (Quit: WeeChat 4.0.1) |
2023-07-11 21:53:04 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) |
2023-07-11 21:55:36 +0200 | boxscape_ | (~boxscape_@81.191.27.107) |
2023-07-11 22:03:14 +0200 | danse-nr3 | (~francesco@151.57.226.137) (Read error: Connection reset by peer) |
2023-07-11 22:03:40 +0200 | danse-nr3 | (~francesco@151.43.248.110) |
2023-07-11 22:03:43 +0200 | <Guest7669> | when building ghc, i got: Error, file does not exist and no rule available: |
2023-07-11 22:03:45 +0200 | <Guest7669> | hadrian/cfg/system.config |
2023-07-11 22:03:50 +0200 | <Guest7669> | what's wrong here |
2023-07-11 22:04:47 +0200 | phma | (~phma@host-67-44-208-125.hnremote.net) (Read error: Connection reset by peer) |
2023-07-11 22:05:10 +0200 | phma | (phma@2001:5b0:211f:7128:2fba:fcc2:b8b6:7566) |
2023-07-11 22:05:25 +0200 | <geekosaur> | did you run boot and configure? |
2023-07-11 22:05:30 +0200 | <geekosaur> | successfully? |
2023-07-11 22:12:08 +0200 | trev | (~trev@user/trev) (Quit: trev) |
2023-07-11 22:12:26 +0200 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) |
2023-07-11 22:15:20 +0200 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Quit: _ht) |
2023-07-11 22:15:36 +0200 | <Guest7669> | sorry, forgot it |
2023-07-11 22:18:01 +0200 | johnw | (~johnw@69.62.242.138) (Read error: Connection reset by peer) |
2023-07-11 22:18:28 +0200 | euandreh | (~Thunderbi@189.6.18.7) |
2023-07-11 22:22:05 +0200 | johnw | (~johnw@69.62.242.138) |
2023-07-11 22:29:45 +0200 | pavonia | (~user@user/siracusa) |
2023-07-11 22:30:32 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 22:34:59 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 246 seconds) |
2023-07-11 22:37:01 +0200 | johnw_ | (~johnw@69.62.242.138) |
2023-07-11 22:37:25 +0200 | johnw | (~johnw@69.62.242.138) (Ping timeout: 240 seconds) |
2023-07-11 22:38:00 +0200 | szkl | (uid110435@id-110435.uxbridge.irccloud.com) |
2023-07-11 22:38:37 +0200 | gmg | (~user@user/gehmehgeh) (Quit: Leaving) |
2023-07-11 22:45:20 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
2023-07-11 22:50:16 +0200 | <nick3> | I've got to be crazy here, I don't understand this compile error: #0 8.773 • Couldn't match type: blaze-markup-0.8.2.8:Text.Blaze.Internal.MarkupM |
2023-07-11 22:50:16 +0200 | <nick3> | #0 8.773 () |
2023-07-11 22:50:16 +0200 | <nick3> | #0 8.773 with: () -> blaze-markup-0.8.2.8:Text.Blaze.Internal.MarkupM ()y |
2023-07-11 22:50:16 +0200 | <nick3> | that makes no sense, couldn't match a type with exactly the same type? |
2023-07-11 22:50:57 +0200 | <davean> | So the formating there is bad, but to parse it appart those don't look at all like the same typ3e |
2023-07-11 22:51:15 +0200 | <[exa]> | nick3: it's like `xxx ()` vs `() -> xxx ()` |
2023-07-11 22:51:17 +0200 | <davean> | "MarkupM ()" vs. "() -> MarkupM ()" |
2023-07-11 22:51:26 +0200 | <davean> | Those are DEEPLY different |
2023-07-11 22:52:13 +0200 | <[exa]> | looks like off-by-one-argument error |
2023-07-11 22:53:56 +0200 | <nick3> | ah ok |
2023-07-11 22:54:14 +0200 | <jade[m]> | this looks like an `a >>= b` vs `a >> b` thing (?) |
2023-07-11 22:54:15 +0200 | <nick3> | I do see |
2023-07-11 22:54:15 +0200 | <nick3> | thanks for that |
2023-07-11 22:54:34 +0200 | <nick3> | yes thats exactly what it was >.> |
2023-07-11 22:54:34 +0200 | <monochrom> | Unpopular opinion: Users of impure functional languages have off-by-one-argument errors. :) |
2023-07-11 22:54:59 +0200 | <jade[m]> | nick3: yeah the library kind of abuses monads in that sense |
2023-07-11 22:55:20 +0200 | <jade[m]> | where they never want you to use anything but m () just ao you can have do notation |
2023-07-11 22:55:26 +0200 | <jade[m]> | I don't really like that |
2023-07-11 22:55:30 +0200 | bratwurst | (~dfadsva@2604:3d09:207f:f650::5b03) |
2023-07-11 22:55:39 +0200 | <jean-paul[m]> | now I wonder what the arity of the arguments to `>.>` is. |
2023-07-11 22:55:56 +0200 | actioninja63 | (~actioninj@user/actioninja) |
2023-07-11 22:56:03 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2023-07-11 22:56:09 +0200 | <nick3> | what do you mean never want you to use anything but m ()? |
2023-07-11 22:57:27 +0200 | actioninja6 | (~actioninj@user/actioninja) (Ping timeout: 246 seconds) |
2023-07-11 22:57:27 +0200 | actioninja63 | actioninja6 |
2023-07-11 22:57:42 +0200 | <jade[m]> | MarkupM a usually doesn't carry any actual data with the a |
2023-07-11 22:57:52 +0200 | <danse-nr3> | %:t (>.>) |
2023-07-11 22:58:04 +0200 | <jade[m]> | type Html = MarkupM () and then everything is using that alias |
2023-07-11 22:58:28 +0200 | <davean> | jade[m]: you can do the data though. |
2023-07-11 22:58:32 +0200 | <davean> | jade[m]: it doesn't sure, but you can |
2023-07-11 22:58:34 +0200 | <jade[m]> | and the only purpose is to be able to write do div $ do ... |
2023-07-11 22:59:24 +0200 | Guest7669 | (~finn@176-151-21-224.abo.bbox.fr) (Quit: WeeChat 3.5) |
2023-07-11 22:59:25 +0200 | bratwurst | (~dfadsva@2604:3d09:207f:f650::5b03) (Ping timeout: 240 seconds) |
2023-07-11 23:00:05 +0200 | <jade[m]> | I think the library also has type Markup = MarkupM () and uses that for all functions |
2023-07-11 23:00:17 +0200 | <jade[m]> | so it never really intended the use of the type |
2023-07-11 23:00:33 +0200 | <probie> | Is that just to abuse do notation without needing rebindable syntax? |
2023-07-11 23:00:39 +0200 | <davean> | That doesn't interfear with using the monad parts? |
2023-07-11 23:00:51 +0200 | <davean> | You still get more power for it being this form |
2023-07-11 23:01:00 +0200 | <jade[m]> | probie: yes exactly |
2023-07-11 23:01:31 +0200 | neuroevolutus | (~neuroevol@2001:ac8:9a:76::1e) |
2023-07-11 23:01:43 +0200 | euandreh | (~Thunderbi@189.6.18.7) (Quit: euandreh) |
2023-07-11 23:02:08 +0200 | <jade[m]> | scanreading through it I don't think the functor instance is even lawful |
2023-07-11 23:02:31 +0200 | <boxscape_> | These days I think QualifiedDo would probably work nicely for that |
2023-07-11 23:02:33 +0200 | <jade[m]> | no idea about applicative and monad, but i suspect they might not be |
2023-07-11 23:05:17 +0200 | <davean> | Its not given most equality. They don't have an eq instance ... thats interesting |
2023-07-11 23:05:49 +0200 | bratwurst | (~dfadsva@2604:3d09:207f:f650::5b03) |
2023-07-11 23:09:29 +0200 | JimL | (~quassel@89.162.16.26) (Read error: Connection reset by peer) |
2023-07-11 23:09:58 +0200 | aku | (~aku@65.108.245.241) (Remote host closed the connection) |
2023-07-11 23:10:42 +0200 | JimL | (~quassel@89.162.16.26) |
2023-07-11 23:12:29 +0200 | johnw_ | johnw |
2023-07-11 23:15:55 +0200 | nick3 | (~nick@2600:100d:b10c:c9f7:54d7:973d:6405:1a8) (Ping timeout: 240 seconds) |
2023-07-11 23:19:36 +0200 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
2023-07-11 23:22:25 +0200 | Vajb | (~Vajb@2001:999:480:2329:e191:822:3665:ff4f) (Ping timeout: 240 seconds) |
2023-07-11 23:28:55 +0200 | acidjnk | (~acidjnk@p200300d6e7072f97d49128753c394ff8.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
2023-07-11 23:29:25 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 23:33:55 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 240 seconds) |
2023-07-11 23:36:25 +0200 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) (Ping timeout: 240 seconds) |
2023-07-11 23:41:15 +0200 | nick3 | (~nick@2600:8807:9084:7800:8939:f628:ed3d:955) |
2023-07-11 23:43:52 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2023-07-11 23:44:35 +0200 | ft | (~ft@p508db151.dip0.t-ipconnect.de) |
2023-07-11 23:44:58 +0200 | JimL | (~quassel@89.162.16.26) (Ping timeout: 250 seconds) |
2023-07-11 23:45:07 +0200 | <danse-nr3> | the topic here could read "the best channel to read while compiling" =D |
2023-07-11 23:47:22 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) |
2023-07-11 23:49:26 +0200 | JimL | (~quassel@89.162.16.26) |
2023-07-11 23:49:36 +0200 | dhil | (~dhil@78.45.150.83.ewm.ftth.as8758.net) (Ping timeout: 246 seconds) |
2023-07-11 23:49:48 +0200 | danse-nr3 | (~francesco@151.43.248.110) (Remote host closed the connection) |
2023-07-11 23:50:11 +0200 | danse-nr3 | (~francesco@151.43.248.110) |
2023-07-11 23:52:01 +0200 | aku | (~aku@65.108.245.241) |
2023-07-11 23:58:36 +0200 | ph88 | (~ph88@ltea-178-013-121-150.pools.arcor-ip.net) |
2023-07-11 23:58:55 +0200 | buckwheatsuperpo | (~buckwheat@209.122.211.192) (Ping timeout: 240 seconds) |