Comments (5)
in a sense, it might not clash. You could argue that
if exists?
and
if exists?(x)
Are pretty consistent. They both ask the same type of question, only the latter is more specified. The one problem I have with this, though, is what is the value of the expression
if exists?(x)
If exists isn't a function?
Lastly, I personally find ! to be more useful semantically than ?, so ! could be incorporated by NOT ?; that might be an option.
from coffeescript.
I think it would be least confusing to have a separate operator, my vote goes with my_var??
.
from coffeescript.
I use ! and ? quite alot in ruby, as I find it useful semantically. I.e. potentially unsafe operations can be tagged with ! and questions with? It would be entirely an opt in feature - if you don't like the style, don't use it.
On the other point converting my_var? to myvar_question_mark is hardly name mangling.
from coffeescript.
This feature request has the same problem as symbols: there is no direct mapping to JS. The direct mapping to JS is what makes Coffee so great, and as soon as you have to start mapping to alternative names, you end up with annoying behavior.
e.g., if a library uses lowerCamelCase, the method name foo? should be renamed to something like isFoo. If, however, Coffee makes the assumption of lower_underscored, you end up with naming clashes in the generated code. Not pretty.
In my opinion, not worth the loss of clean JS portability.
from coffeescript.
Yep. What noonat says is absolutely right. We can't start fiddling with identifiers. Documentation for CoffeeScript libraries should be usable by JavaScript developers and vice-versa. No translation required. If we step away from that, we take a major step away from being a viable alternative way to write solid JavaScript libraries.
Closing the ticket...
from coffeescript.
Related Issues (20)
- Unnecessary `splice` ref added for Array destructuring with rest element not in last position HOT 4
- Bug: Re-ordered nested non-end BindingRestElement doesn't get transpiled HOT 1
- CoffeeScript is fantastic, please donβt give it up HOT 1
- How to imitate `let` behavior in loops? HOT 5
- Proposal: Alternative file extension HOT 1
- Bug: Excessive variable and shallow copy for leading or middle rest parameter
- Proposal: Introduce `let` statement. HOT 6
- Proposal: Document Existential Operator Assignment
- Site issue: code blocks twitch on hover HOT 2
- Proposal: cake command should support ES6 modules HOT 2
- Need help understanding class member meanings HOT 1
- CLI `npm` `scripts` and input `.coffee` file/s as last argument conflicting with `--watch` HOT 2
- Bug: wrong code is transpiled for function call without parentheses HOT 2
- Proposal: Add end word to close method or class HOT 2
- Bug: Invalid indentation allowed after `do`
- Bug: Remove checkShebangLine multi arguments check HOT 1
- feature_request(html): backend CoffeeScript compilation inside HTML files HOT 3
- Bug: yield cannot be used in do -> expressions reliably? HOT 5
- [not an issue] An embeddable playground for CoffeeScript HOT 1
- Please help HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from coffeescript.