| 00:51 | <bakkot> | a large majority of RequireObjectCoercible calls are in String.prototype methods, as 1. Let O be ? RequireObjectCoercible(this value). |
| 00:51 | <bakkot> | why did we design strings to be subclassed |
| 00:53 | <bakkot> | class Foo extends String {} <- code written by the totally deranged |
| 02:30 | <Michael Ficarra> | blame the Smalltalk contingent (Allen) |
| 06:28 | <ljharb> | is it to be subclassed, or to be .called? |
| 17:02 | <shu> | beyond deranged |
| 17:24 | <ljharb> | yall really all prefer the string munging over a nice list?? i'm very surprised |
| 17:32 | <bakkot> | strings are lists |
| 17:34 | <Michael Ficarra> | yep and they have nice shorthands |
| 17:34 | <Michael Ficarra> | like "I am a string" |
| 17:34 | <Michael Ficarra> | and the string-concatenation of |
| 17:36 | <bakkot> | we do also have the list-concatenation of |
| 17:57 | <shu> | lists aren't nice |
| 17:57 | <shu> | I see a list and all I see are cache misses |
| 17:57 | <shu> | why is my Chromebook auto capitalizing wtf |
| 19:42 | <ljharb> | lol "strings are lists" is such a non-JS mental model, oh well |
| 20:24 | <Michael Ficarra> | The String type is the set of all ordered sequences of zero or more 16-bit unsigned integer values (“elements”) up to a maximum length of 2**53 - 1 elements. |
| 20:24 | <Michael Ficarra> | sounds pretty listy to me |
| 20:57 | <ljharb> | seems like
seems like i can just skip the to code points step, since |
| 21:01 | <bakkot> | no, since _c_ is a code point and a string is a list of code units |
| 21:10 | <ljharb> | ah, right, ok thanks |