es1995
proposal-record-tuple
es1995 | proposal-record-tuple | |
---|---|---|
10 | 73 | |
79 | 2,432 | |
- | 0.9% | |
0.0 | 2.7 | |
about 3 years ago | 5 months ago | |
JavaScript | HTML | |
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
es1995
- Design Principles Behind Smalltalk
-
No Lodash
> The API matters, and readability matters.
Exactly, lodash should be part of the language. https://github.com/mlajtos/es1995
-
[AskJS] Is JavaScript missing some built-in methods?
Yes, https://github.com/mlajtos/es1995
-
SmooshGate
> It made the decision to extend prototypes. In hindsight, a huge mistake.
I think it was a mistake at the time, but I still believe prototypal inheritance is pretty great idea. And JS desperately needs standard library, which IMO should extend built-in prototypes, so the language would be more coherent. ES1995 [0] was a funny take on this direction, but people (mainly non-JS people) would like to seriously use it. Go figure.
[0]: https://github.com/mlajtos/es1995
- ES1995: Javascript that could have been
-
Turboprop: JS Arrays as Property Accessors!?!
(I was trying out some old school way with ES1995. I might rewrite it to TS one day.)
-
[AskJS] TIL StackOverflow monkeypatches the String prototype across its various sites.
ES1995 agrees.
-
Function parameter as a tuple
Thanks! I think we share a few aesthetic ideals :) I really like your work on L1 and New Kind of Paper, and just noticed ES1995 – if only it was true…
- ES1995 – The Missing JavaScript Polyfill
- ES1995 – The Missing JS Polyfill
proposal-record-tuple
-
Union, intersection, difference, and more are coming to JavaScript Sets
relevant issue, which is at the crux of this problem: https://github.com/tc39/proposal-record-tuple/issues/387
-
The Everything NPM Package
There are still so many basic things that aren't in the JS stdlib, though. A good example is Map - if you need to use a tuple of two values as a key, you're SOL because there's no way to customize key comparisons. Hopefully we'll get https://tc39.es/proposal-record-tuple/ eventually, but meanwhile languages ranging from C++ to Java to Python have had some sensible way to do this for over 20 years now.
-
Deep Cloning Objects in JavaScript, the Modern Way
If you’re reaching for structuredClone, what you really want is native immutable Record and Tuple syntax, and the companion “deep path properties” syntax which allows for efficient and ergonomic immutable updates:
- https://github.com/tc39/proposal-record-tuple
-
Cool language features that Rust is missing?
It will be called "record" in JavaScript which will swing the popularity back the other way I guess (currently a language proposal)
-
Why doesn't TypeScript properly type Object.keys?
I suspect considering the strong desire to maintain consistency with JavaScript, we will eventually see something that when the Record proposal passes through tc39
-
ES2023 features list!
I hope the Record and Tuple proposal makes it through
-
ES2023 introduces new array copying methods to JavaScript
I mean, I'd love some real immutable/persistent data structures in JS by default, or even some Immer-like syntax sugar. Something like the record/tuple proposal would be awesome.
-
What's new in ECMAScript 2023
This will become very useful once Records and Tuples are a thing, because it allows you to store object references in a record/tuple (which by definition can only contain primitives).
-
[AskJS] Is JavaScript missing some built-in methods?
Record and tuple is at stage 2
-
The huge potential of Kotlin/Wasm
Also, js has an ongoing immutable value data types proposal.
What are some alternatives?
proposal-set-methods - Proposal for new Set methods in JS
zod - TypeScript-first schema validation with static type inference
proposal-array-grouping - A proposal to make grouping of array items easier
Immer - Create the next immutable state by mutating the current one
banned - Banned from a site or organization? Account suspended? Censored? Why?
typescript-eslint - :sparkles: Monorepo for all the tooling which enables ESLint to support TypeScript
underscore - JavaScript's utility _ belt
typescript-is
type-system-j - adds an optional type system to J language
TypeScript - TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
proposal-iterator-helpers - Methods for working with iterators in ECMAScript
proposals - Tracking ECMAScript Proposals