Logs: freenode/#haskell
| 2021-03-02 18:33:17 | × | ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Remote host closed the connection) |
| 2021-03-02 18:33:17 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) (Read error: Connection reset by peer) |
| 2021-03-02 18:33:28 | → | ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta) |
| 2021-03-02 18:33:38 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) |
| 2021-03-02 18:33:55 | × | Deide quits (~Deide@217.155.19.23) (Read error: Connection reset by peer) |
| 2021-03-02 18:33:56 | <ixlun> | So, I presume that newIORef will create a copy of whatever is being pointed to, even if it's the same object? |
| 2021-03-02 18:33:56 | <ixlun> | ind |
| 2021-03-02 18:34:02 | × | ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Remote host closed the connection) |
| 2021-03-02 18:34:12 | → | Deide joins (~Deide@217.155.19.23) |
| 2021-03-02 18:34:13 | <monochrom> | I don't think that model gets you very far. |
| 2021-03-02 18:34:24 | <merijn> | ixlun: Define "same object" |
| 2021-03-02 18:34:31 | → | ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta) |
| 2021-03-02 18:34:36 | <monochrom> | Instead, this model gets you very far, probably all the way down to asm: Each name is a pointer. |
| 2021-03-02 18:34:58 | <monochrom> | And an IORef is already the box itself. |
| 2021-03-02 18:35:13 | <merijn> | ixlun: newIORef allocates a (mutable) reference (hence, "Ref") to a value. You cannot mutate the values inside, you *can* mutate the reference to point at different values |
| 2021-03-02 18:35:33 | × | ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Remote host closed the connection) |
| 2021-03-02 18:35:43 | → | ddellaco_ joins (ddellacost@gateway/vpn/mullvad/ddellacosta) |
| 2021-03-02 18:35:57 | × | raehik1 quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds) |
| 2021-03-02 18:36:18 | × | ddellaco_ quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Remote host closed the connection) |
| 2021-03-02 18:36:38 | × | crobbins quits (~crobbins@2601:2c1:200:ec50:2c10:d848:8f1f:38a4) (Ping timeout: 260 seconds) |
| 2021-03-02 18:37:03 | <ixlun> | monochrom: in that case, why doesn't a and b point to the same object? They where both created from the same name, `ourmap'? |
| 2021-03-02 18:37:22 | <monochrom> | newIORef creates and returns a brand new box. |
| 2021-03-02 18:37:38 | <monochrom> | You call it twice you get two distinct boxes. |
| 2021-03-02 18:37:39 | <merijn> | ixlun: They do |
| 2021-03-02 18:37:56 | <merijn> | ixlun: But you can't change the object pointed too, you change the pointer |
| 2021-03-02 18:38:22 | <merijn> | ixlun: So "pointing at the same object" isn't something you can meaningfully distinguish anyway |
| 2021-03-02 18:38:43 | → | aenesidemus joins (~aenesidem@c-73-53-247-25.hsd1.fl.comcast.net) |
| 2021-03-02 18:38:51 | <ixlun> | Right, okay. so mofiyIORef will change the pointer, *not* the underlying object. |
| 2021-03-02 18:38:56 | <merijn> | Yes |
| 2021-03-02 18:39:38 | → | ClaudiusMaximus joins (~claude@191.123.199.146.dyn.plus.net) |
| 2021-03-02 18:39:38 | × | ClaudiusMaximus quits (~claude@191.123.199.146.dyn.plus.net) (Changing host) |
| 2021-03-02 18:39:38 | → | ClaudiusMaximus joins (~claude@unaffiliated/claudiusmaximus) |
| 2021-03-02 18:39:55 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) (Read error: Connection reset by peer) |
| 2021-03-02 18:40:14 | <ixlun> | Ahh, right, so that's why IORef can point to immutable data, `Map' in this case. |
| 2021-03-02 18:40:14 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) |
| 2021-03-02 18:40:31 | <ixlun> | and give the impression of mutation. |
| 2021-03-02 18:41:41 | <maralorn> | simonmic: But this also explains why you can only make delegation changes for the second next epoch. Because I assume that the next epoch will be needed to establish the order in the epoch after it. |
| 2021-03-02 18:41:58 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:e0e9:a038:1112:d7c8) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2021-03-02 18:42:31 | <geekosaur> | channel? |
| 2021-03-02 18:46:08 | × | Deide quits (~Deide@217.155.19.23) (Read error: Connection reset by peer) |
| 2021-03-02 18:46:42 | → | Deide joins (~Deide@217.155.19.23) |
| 2021-03-02 18:46:42 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) (Read error: Connection reset by peer) |
| 2021-03-02 18:46:49 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) |
| 2021-03-02 18:48:07 | × | rj quits (~x@gateway/tor-sasl/rj) (Ping timeout: 268 seconds) |
| 2021-03-02 18:48:43 | × | soft-warm quits (44695313@ip68-105-83-19.sd.sd.cox.net) (Ping timeout: 240 seconds) |
| 2021-03-02 18:50:28 | → | nbloomf joins (~nbloomf@2600:1700:ad14:3020:e0e9:a038:1112:d7c8) |
| 2021-03-02 18:51:02 | hc | is now known as hc_ |
| 2021-03-02 18:51:03 | × | geekosaur quits (82650c7a@130.101.12.122) (Ping timeout: 240 seconds) |
| 2021-03-02 18:51:47 | → | rj joins (~x@gateway/tor-sasl/rj) |
| 2021-03-02 18:52:08 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:2d2c:7153:bdbb:6201) (Remote host closed the connection) |
| 2021-03-02 18:52:31 | × | dhouthoo quits (~dhouthoo@ptr-eitgbj2w0uu6delkbrh.18120a2.ip6.access.telenet.be) (Quit: WeeChat 3.0) |
| 2021-03-02 18:52:57 | → | Noldorin joins (~noldorin@unaffiliated/noldorin) |
| 2021-03-02 18:52:59 | <d34df00d> | Alright, I haven't written advanced type-level haskell for a while, so how what's the ghc way to spell out the kind of a type constructor FooType that could be used as `FooType '[ 1, 2, 3 ]`? |
| 2021-03-02 18:53:32 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) (Read error: Connection reset by peer) |
| 2021-03-02 18:53:36 | <d34df00d> | I basically want something like Idris' data FooType : List Nat -> Type where ... |
| 2021-03-02 18:53:41 | × | gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Ping timeout: 268 seconds) |
| 2021-03-02 18:53:55 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) |
| 2021-03-02 18:54:18 | → | Pickchea joins (~private@unaffiliated/pickchea) |
| 2021-03-02 19:00:19 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) (Read error: Connection reset by peer) |
| 2021-03-02 19:00:30 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) |
| 2021-03-02 19:00:36 | × | minoru_shiraeesh quits (~shiraeesh@5.101.59.37) (Ping timeout: 240 seconds) |
| 2021-03-02 19:00:41 | → | __minoru__shirae joins (~shiraeesh@109.166.56.62) |
| 2021-03-02 19:01:20 | → | gehmehgeh joins (~ircuser1@gateway/tor-sasl/gehmehgeh) |
| 2021-03-02 19:01:20 | × | chisui quits (577bc9db@i577BC9DB.versanet.de) (Quit: Connection closed) |
| 2021-03-02 19:02:36 | × | jpds_ quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection) |
| 2021-03-02 19:03:11 | → | jpds_ joins (~jpds@gateway/tor-sasl/jpds) |
| 2021-03-02 19:03:39 | → | berberman joins (~berberman@unaffiliated/berberman) |
| 2021-03-02 19:03:50 | → | nineonin_ joins (~nineonine@50.216.62.2) |
| 2021-03-02 19:04:14 | × | berberman_ quits (~berberman@unaffiliated/berberman) (Ping timeout: 264 seconds) |
| 2021-03-02 19:04:47 | × | machinedgod quits (~machinedg@135-23-192-217.cpe.pppoe.ca) (Quit: Lost terminal) |
| 2021-03-02 19:05:55 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:2076:7626:28f5:58b2) (Ping timeout: 240 seconds) |
| 2021-03-02 19:06:35 | × | pincel quits (~pyon@unaffiliated/pyon) (Ping timeout: 272 seconds) |
| 2021-03-02 19:07:15 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) (Read error: Connection reset by peer) |
| 2021-03-02 19:07:36 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) |
| 2021-03-02 19:07:42 | → | machinedgod joins (~machinedg@135-23-192-217.cpe.pppoe.ca) |
| 2021-03-02 19:08:29 | → | geekosaur joins (82650c7a@130.101.12.122) |
| 2021-03-02 19:11:42 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) (Read error: Connection reset by peer) |
| 2021-03-02 19:12:12 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) |
| 2021-03-02 19:12:12 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) (Read error: Connection reset by peer) |
| 2021-03-02 19:12:21 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) |
| 2021-03-02 19:12:21 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) (Read error: Connection reset by peer) |
| 2021-03-02 19:12:30 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) |
| 2021-03-02 19:17:10 | × | Tario quits (~Tario@201.192.165.173) (Read error: Connection reset by peer) |
| 2021-03-02 19:17:44 | × | rj quits (~x@gateway/tor-sasl/rj) (Ping timeout: 268 seconds) |
| 2021-03-02 19:18:42 | <__minoru__shirae> | ixlun: if you want to experiment with mutability, building a gui might be more convenient than using console input-output. You can build simple console-based gui using ansi-terminal package |
| 2021-03-02 19:19:43 | → | Tario joins (~Tario@201.192.165.173) |
| 2021-03-02 19:20:00 | → | rj joins (~x@gateway/tor-sasl/rj) |
| 2021-03-02 19:22:53 | <__minoru__shirae> | the simplest gui could be something like "x = 1, y = 2, press e to enter edit mode, press q to quit" |
| 2021-03-02 19:23:15 | <monochrom> | That seems more like a huge distraction and yak shaving than conveniece to me. |
| 2021-03-02 19:24:12 | <__minoru__shirae> | but once you're done with the yak shaving you have a neat interface that shows you all the values at once |
| 2021-03-02 19:24:18 | × | Noldorin quits (~noldorin@unaffiliated/noldorin) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
| 2021-03-02 19:24:24 | <monochrom> | I got much more mileage by just writing the same kind of 10-line toy programs ixlun wrote. |
| 2021-03-02 19:25:04 | × | Aquazi quits (uid312403@gateway/web/irccloud.com/x-igqvlzivrkvilmgu) (Quit: Connection closed for inactivity) |
| 2021-03-02 19:25:35 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:2d2c:7153:bdbb:6201) |
| 2021-03-02 19:25:37 | <__minoru__shirae> | and you can handle arrow button press events |
| 2021-03-02 19:26:12 | <__minoru__shirae> | and then for example incrementing a value becomes easier |
| 2021-03-02 19:26:30 | <__minoru__shirae> | you don't have to type a new value, you just press "up" |
| 2021-03-02 19:27:25 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) (Read error: Connection reset by peer) |
| 2021-03-02 19:27:29 | <monochrom> | The reason the frugal "dry" "dull" approach works is because there is not much to understand and experiment with mutability. |
| 2021-03-02 19:27:35 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-c404-e80d-f3d0-d4c5.res6.spectrum.com) |
All times are in UTC.