proposal-hashbang
proposal-record-tuple
proposal-hashbang | proposal-record-tuple | |
---|---|---|
8 | 73 | |
133 | 2,430 | |
- | 0.8% | |
0.0 | 2.7 | |
almost 2 years ago | 5 months ago | |
HTML | HTML | |
- | - |
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.
proposal-hashbang
-
Javascript, the GOAT of programming languages that will take over the world in 2024
Before ECMAScript 2023 (ES14), executing a JavaScript file directly from the command line required manually specifying the interpreter path in the first line of the module. This process could vary depending on the operating system and Node.js installation.ES14 standardizes the use of hashbangs (#!) in JavaScript modules, enabling direct execution without the need for explicit interpreter invocation. The hashbang syntax is a simple convention that indicates the interpreter to be used for executing a module. It consists of a shebang (#!) followed by the path to the interpreter and optionally any arguments. For a JavaScript file, the hashbang line typically includes the path to the Node.js executable.
- What's new in ES2023?
-
ES2023 features list!
https://github.com/tc39/proposal-hashbang has some details.
-
JavaScript's New Features: Exploring the Latest Additions to the Language
Hashbang Grammar
- ES2023 candidate source code + spec
-
Updates from the 91st TC39 meeting
Hashbang Grammar: match de-facto usage in some CLI JS hosts that allow for #! Shebangs / Hashbang.
-
cmru is a command runner that allows you to describe commands with javascript.
But if you just wanted to execute it directly then you could use a shebang because everything after the bang is interpreted and not the bang its self. Most js engines allow this in some form. Here is a proposal to standardize it. https://github.com/tc39/proposal-hashbang
- Released Google/zx – tons of DX improvements and more
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?
sh - Python process launching
zod - TypeScript-first schema validation with static type inference
proposal-symbols-as-weakmap-keys - Permit Symbols as keys in WeakMaps, entries in WeakSets and WeakRefs, and registered in FinalizationRegistries
Immer - Create the next immutable state by mutating the current one
clii - Easily build a cli app.
typescript-eslint - :sparkles: Monorepo for all the tooling which enables ESLint to support TypeScript
proposal-array-find-from-last - Proposal for Array.prototype.findLast and Array.prototype.findLastIndex.
typescript-is
proposal-object-pick-or-omit - Ergonomic Dynamic Object Restructuring. [Moved to: https://github.com/tc39/proposal-object-pick-or-omit]
TypeScript - TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
proposals - Tracking ECMAScript Proposals
ts-node - TypeScript execution and REPL for node.js