Re: Proposal: Forced Chaining Operator "!."

2020-04-25 Thread Joe Eagar
Anyone have ideas on more examples? It’s tempting to make a transpiler plugin to see how it works in practice, but I’d like to see more examples first. Thanks On Sat, Apr 25, 2020 at 1:12 PM Jacob Bloom wrote: > Maybe it would be less footgunny to support autovivification in a more >

Re: How many ES5 environments are still in use today?

2018-04-03 Thread Joe Eagar
com> > wrote: > > LibreJS looks like a browser extension, not a JS engine... > > > > Aside, wow, I'm in favor of open-source, but this one is pretty out > there. > > > > -- > > Michael J. Ryan - http://tracker1.info > > > > > > On Tue, A

Re: How many ES5 environments are still in use today?

2018-04-03 Thread Joe Eagar
LibreJS? The FSF is seriously escalating the plugin/scripting issue? Joe On Mon, Apr 2, 2018 at 4:07 PM, J Decker <d3c...@gmail.com> wrote: > > > On Mon, Apr 2, 2018 at 12:46 PM, Andrea Giammarchi < > andrea.giammar...@gmail.com> wrote: > >> I guess when it

Why no tail calls from generators?

2016-10-12 Thread Joe Gibbs Politz
in generator bodies?) Specifically, I'm referring to step 5 in IsInTailPosition that returns false ( http://www.ecma-international.org/ecma-262/6.0/index.html#sec-isintailposition) if the body is a generator body. Thanks! Joe P ___ es-discuss mailing list es

Re: Error-Type Specific try/catch Blocks

2016-05-13 Thread Joe Groseclose
@JoePea, that is one of the syntaxes I recommend in the proposal. @michalwadas The primary goal of this I think is to create a standard feature, but I do not see why an expression wrapped in parenthesis ultimately resulting in an error class would not be supported. Example: ... } catch

Re: Error-Type Specific try/catch Blocks

2016-05-13 Thread Joe Groseclose
Ah, that does somewhat throw a wrench in the system. I'm not sure what the committee's policy is on backwards compatibility and non-standard features. I find the SpiderMonkey handling you just brought to my attention to be a little clunky. Sent from my iPhone > On May 13, 2016, at 11:26 AM,

Re: PRNG - currently available solutions aren't addressing many use cases

2015-12-01 Thread joe
this). Still, even they would be better than nothing. Cheers, Joe On Tue, Dec 1, 2015 at 1:45 PM, David Bruant <bruan...@gmail.com> wrote: > Le 01/12/2015 20:20, Michał Wadas a écrit : >> >> >> As we all know, JavaScript as language lacks builtin randomness related &

Re: Object id, hash, etc?

2015-09-08 Thread joe
Didn't send to list, something is wrong with my reply all. Sorry about that. Stupid mobile gmail. -- Forwarded message -- From: "joe" <joe...@gmail.com> Date: Sep 8, 2015 11:15 AM Subject: Re: Object id, hash, etc? To: "Garrett Smith" <dhtmlki

Re: Exponentiation operator precedence

2015-08-27 Thread Joe Gibbs Politz
On Thu, Aug 27, 2015 at 2:58 PM, Alexander Jones a...@weej.com wrote: Ethan is making my point far better than I did, and I agree completely about the issue of unary operators visually appearing more tightly bound than binary operators. At this point it seems fair to at least acknowledge the

Re: Static local variables

2015-08-10 Thread joe
assignment operator might be a different matter (I've not thought it through, though). Best, Joe On Mon, Aug 10, 2015 at 9:43 AM, Fabrício Matté ultco...@gmail.com wrote: What you've described seems very similar to PHP's static variables http://php.net/manual/en/language.variables.scope.php

Re: Static local variables

2015-08-10 Thread joe
recently implemented ES6 modules as a little require.js loader plugin (it only transpiles the module syntax, since Chrome now has most everything else in ES6), perhaps I'll write a little plugin for this, too. Then I can use it in only the half-dozen or so files that really need it. Joe Joe

Re: please add orEqual operator

2015-08-10 Thread joe
the VMs probably will. . . perhaps the TC39 committee should *mandate* that they do so formally, in the spec. Then people like me could stop violating bits of the standard that aren't workable with how today's VMs work, like the return value of .next methods in iterators. Joe On Mon, Aug 10, 2015

Static local variables

2015-08-10 Thread joe
extensions such as this. What do people think? Too many normative problems? Best, Joe ___ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss

Re: please add orEqual operator

2015-08-10 Thread joe
variadic function, I suppose: if (select(a, 1, 2, 3, 4, 5, 6)) { } Cheers, Joe On Mon, Aug 10, 2015 at 6:09 AM, myemailu...@gmail.com wrote: Thanks I'll be searching through archive, and yea i think this is something very simple and yet innovative. On Mon, Aug 10, 2015 at 3:55 AM, Peter

Re: please add orEqual operator

2015-08-10 Thread joe
into a huge switch statement or unreadable set of ternary expressions just to avoid that cost. I’m quite sure someone will point out how wrong I am on any or all of the above points any moment now, I can’t wait =) On Aug 10, 2015, at 1:15 PM, joe joe...@gmail.com wrote: I actually like `[1, 2, 3, 4

Re: please add orEqual operator

2015-08-10 Thread joe
Do you know *why* python gets away with that, though? It forcibly amortizes the GC cost by using a hybrid reference counting/cyclic collector scheme. That's not exactly fast, either, which is why no one else does it. On Mon, Aug 10, 2015 at 2:06 PM, Tab Atkins Jr. jackalm...@gmail.com wrote:

Re: Please help with writing spec for async JSON APIs

2015-08-02 Thread joe
systems natively. Joe On Sat, Aug 1, 2015 at 11:35 PM, Morningstar, Chip cmornings...@paypal.com wrote: I confess I don't see the point of this proposal at all, at least with respect to being specifically about JSON. JSON parsing/stringification is pure computation; it's not like I/O where you

Re: Please help with writing spec for async JSON APIs

2015-07-31 Thread joe
JSON parsing is such a slow process that it motivated me to re-invent Google Protobufs (in a nice, JS-friendly way, see https://github.com/joeedh/STRUCT/wiki/Intro-and-Examples ). I never use JSON in production code for this reason. An async api isn't a bad idea. Joe On Fri, Jul 31, 2015 at 8

Re: Named Paramters

2015-07-31 Thread joe
relatively undeveloped. Joe On Fri, Jul 31, 2015 at 8:31 AM, Soni L. fakedme...@gmail.com wrote: Could add f{} as sugar for f({}), and make engines optimize f{}? (no positional arguments though) On 31/07/15 12:00 PM, Michał Wadas wrote: Proposal that do not conflict with minimifiers

Fwd: Re: insteadof operator

2015-06-25 Thread joe
[sorry forgot to reply to all] -- Forwarded message -- From: joe joe...@gmail.com Date: Jun 25, 2015 5:34 PM Subject: Re: insteadof operator To: Bergi a.d.be...@web.de Cc: Would there be any security issues? Also, runtime or lexical scope? I've actually wanted this feature

Re: Language design

2015-06-13 Thread joe
suff like: Bleh.prototype.bleh.call(this) Replaced with: super.bleh(); I thought I would jump for joy. Anyway, I'm incredibly grateful to the TC39 committed for their work. Thanks, Joe P.S. . . .If a mailing list must have noise a well as signal, why not have positive noise mixed

Re: Ideas on type hinting and named parameters

2015-06-10 Thread joe
). At least I find it helpful. However, it did require Yet Another Cover Grammar, so I dunno if it's appropriate here. Best, Joe On Jun 8, 2015 9:19 PM, Luke Scott l...@webconnex.com wrote: Hello All, I wanted to share some ideas with you for type hinting: https://github.com/lukescott/es-type

Re: let function

2015-05-14 Thread joe
Hay, I've not read all of the spec, and I've implemented much of it. :P Joe On Thu, May 14, 2015 at 12:16 PM, Domenic Denicola d...@domenic.me wrote: Not all browsers have implemented the spec yet. But you should read the spec before proposing changes to it! *From:* Alexander Jones

Re: Parser for ES6?

2015-05-07 Thread joe
literals wasn't easy (it's not strictly possible to parse them with a RE tokenizer, but I managed to hackishly make it work). Joe On Thu, May 7, 2015 at 8:37 AM, Park, Daejun dpar...@illinois.edu wrote: Hi, Is there any parser for ES6? It seems that no implementation completely supports ES6

Re: Re: Are ES6 modules in browsers going to get loaded level-by-level?

2015-04-25 Thread joe
Replies interspersed below On Thu, Apr 23, 2015 at 9:48 AM, James Burke jrbu...@gmail.com wrote: On Thu, Apr 23, 2015 at 7:47 AM, Domenic Denicola d...@domenic.me wrote: Indeed, there is no built-in facility for bundling since as explained in this thread that will actually slow down your

Re: Re: Are ES6 modules in browsers going to get loaded level-by-level?

2015-04-25 Thread joe
What I do is send the files over in as TAR archives, with mod_deflate turned on (they basically turn into .tar.gz files at that point). It's reasonably fast, even though I'm processing thirty megabytes of data this way (yay for typed arrays). I highly recommend it. On Thu, Apr 23, 2015 at 7:57

Re: Existential Operator / Null Propagation Operator

2015-04-07 Thread joe
That's a good point. Are lexical non-DFA grammars allowed? It would be trivial to solve that with a regular expression lookahead. Although I suppose at that point you might as well call it a cover grammar. Joe On Mon, Apr 6, 2015 at 2:42 PM, Brendan Eich bren...@mozilla.org wrote: joe wrote

Re: Existential Operator / Null Propagation Operator

2015-04-07 Thread joe
(a); On Tue, Apr 7, 2015 at 6:24 PM, Brendan Eich bren...@mozilla.org wrote: joe wrote: That's a good point. Are lexical non-DFA grammars allowed? It would be trivial to solve that with a regular expression lookahead. Although I suppose at that point you might as well call it a cover

Re: Existential Operator / Null Propagation Operator

2015-04-07 Thread joe
That looks workable. Does anyone have any more comments on '.?' versus '?.' ? Joe On Tue, Apr 7, 2015 at 7:34 PM, Sebastian McKenzie seb...@gmail.com wrote: No, you’d just memoise it to a variable: a?.d().f?.b to: var _temp, _temp2; (a != undefined ? (temp = a.d() != undefined

Re: The ES6 iteration protocol

2015-04-06 Thread joe
Regardless of what the spec says, you cannot avoid singleton iterators in real-world code. In my opinion, the spec should refrain from specifying when object creation happens within the iteration protocol, wait for the relevant code and contract patterns to develop and then include something in

Re: Existential Operator / Null Propagation Operator

2015-04-06 Thread joe
I hacked together something similar myself. IIRC, this particular transformation has issues with nested operators (e.g. a.b?.c.d?.e.f?.h). Of course that's an implementation detail, but the problem (if I'm remembering it right) is that people couldn't figure out what the implementation

Re: Existential Operator / Null Propagation Operator

2015-04-06 Thread joe
, this is a very simple use case. Supporting e.g. function calls would require more tokens (which raises the question: why stop at '.'? Should we have arithmetic versions too?). Given the proliferation of binary operator tokens in JS, I'm not sure if this is a good thing. Joe On Mon, Apr 6, 2015

Re: Promises vs Streams

2015-03-28 Thread joe
async libraries. Joe On Sat, Mar 28, 2015 at 8:20 AM, Anne van Kesteren ann...@annevk.nl wrote: On Sat, Mar 28, 2015 at 1:14 PM, Boopathi Rajaa legend.r...@gmail.com wrote: Why do we have both? Why do we have both values and arrays, not just the latter? -- https://annevankesteren.nl

Re: How to fix the `class` keyword

2015-03-04 Thread joe
. It's not terribly important to me since I seem to average one use case of multiple inheritance every fifty thousand lines of code or so, and I can usually fudge it. I'm just curious if multiple inheritance is on the radar or not. Thanks. Best, Joe On Wed, Mar 4, 2015 at 8:00 AM, joe joe

Re: How to fix the `class` keyword

2015-03-04 Thread joe
is proposing we *remove* the old prototypal stuff. The class syntax solves one set of problems. The more flexible prototypal stuff solves another, and from my own experience they work pretty well together. Joe On Wed, Mar 4, 2015 at 5:03 AM, Benjamin (Inglor) Gruenbaum ing...@gmail.com wrote

Re: Subject: Performance of iterator .next() as specified

2015-02-15 Thread joe
people may not have any choice but to optimize it. Joe ___ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss

Re: Subject: Performance of iterator .next() as specified

2015-02-15 Thread joe
Again, where does this mutation occur? The spec shouldn't allow any such thing to begin with; it should mandate exactly what my compiler does: as soon as .next returns, copy .value into the loop variable. The developer shouldn't have any access to the return value from within the loop at all; if

Re: Subject: Performance of iterator .next() as specified

2015-02-15 Thread joe
are important for such things. Frankly, I find this sudden embrace of good coding practices odd in a language that practically sets the floor for how horrendously mutable a dynamic runtime language can get. On Sun, Feb 15, 2015 at 3:35 PM, joe joe...@gmail.com wrote: On Sun, Feb 15, 2015 at 7:16 AM

Re: Subject: Performance of iterator .next() as specified

2015-02-15 Thread joe
part. On Sun, Feb 15, 2015 at 8:19 AM, Benjamin (Inglor) Gruenbaum ing...@gmail.com wrote: Joe, I don't think we're having the same discussion. Again, this is about the issue Katelyn raised about the return value of `.next`. Katelyn suggested that the return value of a `.next` call

Re: Math.TAU

2014-06-30 Thread joe
. This does seem a bit silly. Joe On Mon, Jun 30, 2014 at 6:12 PM, Rick Waldron waldron.r...@gmail.com wrote: On Monday, June 30, 2014, Frankie Bagnardi f.bagna...@gmail.com wrote: String.prototype.endsWith and Object.is are functions, and their JS implementations are nontrivial to memorize

Re: TC39 vs the community

2014-06-23 Thread joe
identity among JS developers is fooling themselves. I'm on the side of TC39, by the way. I don't believe in democracy in software. That's why we have standards organizations. Joe On Sun, Jun 22, 2014 at 9:41 PM, Garrett Smith dhtmlkitc...@gmail.com wrote: On 6/20/14, David Bruant bruan

Re: Proposal: The Conditional Fail and Recover Operators; or: a more generic Existential Operator

2014-05-27 Thread joe
they work in practice. Best, Joe On May 27, 2014 12:03 AM, Claude Pache claude.pa...@gmail.com wrote: Since nobody gave their advice, I'll give my own one :-) The particular case of the Existential Operator (conditional property access and conditional method call) is probably the more usual

Re: The Existential Operator

2014-05-22 Thread joe
I don't think silent fails are always a bad thing. I've been trying to make my code robust against unexpected nulls, preferably only in release mode. That's not always easy to do, though (restricting the behavior to release builds), which is why I consciously chose to wait a year until the code

Re: Bytecode

2014-05-21 Thread joe
After writing an ES6-ES5 compiler, I've come to the conclusion that ES5 *is* an intermediary language. For dynamic, duck-typed languages it's not so bad. I always found the Dart people's arguments the most persuasive: https://www.dartlang.org/articles/why-not-bytecode/ Basically, any language

Re: The Existential Operator

2014-05-20 Thread joe
the presence of one ?. operator causes the entire chain (including normal .'s) to be transformed. Not sure what the side effects of this would be, performance-wise. Joe On Tue, May 20, 2014 at 11:08 AM, Dmitry Soshnikov dmitry.soshni...@gmail.com wrote: Woah! :) 2012 -- so I correctly recalled couple

Re: Source maps (was: Multiline Strings)

2014-03-12 Thread joe
extensions. Or would the sourcemaps contain their own AST definitions? Joe ___ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss

Generator * syntax

2014-03-03 Thread joe
Is the function* syntax for generators final? I'm curious what the justification for it is, but mostly I just need to know if it's likely to change. Thanks, Joe ___ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es

Final iterator spec

2014-02-20 Thread joe
has yet to switch back, and before I bug the developers on that project I wanted to make sure that StopIteration is, in fact, back. Thanks, Joe Eagar ___ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss

Re: Final iterator spec

2014-02-20 Thread joe
. To answer your question, the iterator protocol hasn't changed back to using StopIteration. It's still { value, done }. On Feb 20, 2014, at 2:27 AM, joe joe...@gmail.com wrote: A while back, the wiki Harmony draft spec for iterators changed from a Pythonic StopIteration approach to one where

Re: es-discuss Digest, Vol 67, Issue 40

2012-09-14 Thread Joe Spencer
Sent from my Cricket smartphone es-discuss-requ...@mozilla.org wrote: Send es-discuss mailing list submissions to es-discuss@mozilla.org To subscribe or unsubscribe via the World Wide Web, visit https://mail.mozilla.org/listinfo/es-discuss or, via email, send a message with

Re: Annex A of 5th Edition

2012-09-06 Thread Joe Spencer
Chrome appears to follow the spec a little closer. Observe the following: var someVar = 5; //valid syntax, throws ReferenceError function passPlease(){ alert(someVar); } //invalid syntax, throws SyntaxError function failPlease(){ alert(someVar); } -Joe Allen Wirfs-Brock al

Re: On class literals possibly not making it into ECMAScript.next

2011-11-06 Thread Joe Developer
jQuery is a somewhat poor / extreme example - jQuery has taken a monolithic approach to code structuring - while more modern and full featured frameworks tend towards load-on-demand, and hence can offer 'capability-loading'. That said, I do think that it is worth keeping in mind that there will

Re: testable specification

2011-10-27 Thread Joe Gibbs Politz
If you're curious about interpreters, I'd like to point out that we have one that we think is pretty decent: https://github.com/brownplt/LambdaS5 It now has reasonable, though incomplete, coverage of Test262: http://cs.brown.edu/~joe/public/results/summary.html Further, it implements much

Re: Grawlix

2011-10-14 Thread Joe Developer
What makes people happy is probably complex and somewhat different for different people. I think that for many in this particular line of work it could probably be identified by 'being in the zone'. I find that it tends to accompany a sense of accomplishment, discovery by creation of value ( be

Re: Grawlix

2011-10-13 Thread Joe Developer
On Thu, Oct 13, 2011 at 11:18 AM, Juan Ignacio Dopazo dopazo.j...@gmail.com wrote: On Thu, Oct 13, 2011 at 12:23 AM, Joe Developer joe.d.develo...@gmail.com wrote: I was very close to mentioning in my response to Brendan that the first thing that came to mind regarding deep nesting

Re: Grawlix

2011-10-13 Thread Joe Developer
On Thu, Oct 13, 2011 at 8:39 PM, Juan Ignacio Dopazo dopazo.j...@gmail.comwrote: On Thu, Oct 13, 2011 at 6:32 AM, Joe Developer joe.d.develo...@gmail.comwrote: Truthfully the - arrow construct is one that I have an aversion to which borders ( I'll admit ) on the irrational My emails

Re: Grawlix

2011-10-12 Thread Joe Developer
On Wed, Oct 12, 2011 at 6:18 PM, Mikeal Rogers mikeal.rog...@gmail.comwrote: I would implore those doing this design work to offer greater weight to the options of people who are *using* the language more than they are spending their time on this list. Users are generally under-represented

Re: Grawlix

2011-10-12 Thread Joe Developer
language deficiencies. I think an important question here is: Who are you actually trying to serve with your changes? -- Joe Developer -- Dr. Axel Rauschmayer a...@rauschma.de twitter.com/rauschma home: rauschma.de blog: 2ality.com ___ es

Re: Grawlix

2011-10-12 Thread Joe Developer
On Thu, Oct 13, 2011 at 6:11 AM, Juan Ignacio Dopazo dopazo.j...@gmail.comwrote: On Wed, Oct 12, 2011 at 7:52 PM, Joe Developer joe.d.develo...@gmail.comwrote: I'll admit that in my years I have never run into a situation where I found myself forced into nesting levels that I found