01:42 | <Jack Works> | I think the powerful follow on is the decorated block |
02:42 | <rbuckton> | I have been considering proposing something like Scala's extractor objects to pair with ADT enums. That would let you invoke logic during destructuring: ```js const obj = Option.Some(1); const Option.Some(x) = obj; ``` Also, ```js const { extractor(x) } = obj; ``` |
02:44 | <rbuckton> | Rough outline here: https://gist.github.com/rbuckton/ae46b33f383ba69880c7138c49b5e799 |
18:00 | <shu> | bakkot: Michael Ficarra the usage of Symbol.species in https://tc39.es/ecma262/#sec-initializetypedarrayfromtypedarray was pointed out to me to be very strange |
18:01 | <shu> | what the hell is going on there? we get @@species for the underlying ArrayBuffer, but then don't ever call Construct on it, instead only pulling the prototype off via OrdinaryCreateFromConstructor |
18:02 | <shu> | i don't remember the history here, but if that's not a bug, that's gotta be the worst usage of @@species in the spec |
18:25 | <bakkot> | that's pretty weird, yes |
18:27 | <bakkot> | that has to be possible to rip out |
18:27 | <bakkot> | i will be so sad if someone is actually depending on that in a serious way |
18:28 | <bakkot> | (by "that" I mean the use of species in TypedArrays and ArrayBuffers) |
18:32 | <bakkot> | this definitely seems like a bug, though not one I'm inclined to try to fix |
19:01 | <shu> | i agree, this has to be possible to rip out |
19:01 | <shu> | i have to believe |