Giter VIP home page Giter VIP logo

Comments (17)

benjamingr avatar benjamingr commented on August 17, 2024

Be sure those talks are recorded :) (and contact meijer if you haven't already)

from gtor.

kriskowal avatar kriskowal commented on August 17, 2024

The only means I know to let @headinthebox know that I’ll be on his continent to give this talk on Monday is to mention his Github handle.

Erik, if you catch this, I know this is short notice, but it would be a pleasure to meet you and to apologize for misspelling your name in person.

from gtor.

headinthebox avatar headinthebox commented on August 17, 2024

Thanks for the heads-up. I DM-ed you on Twitter. Shoot me an email via [email protected]. Would love to chat more.

from gtor.

benjamingr avatar benjamingr commented on August 17, 2024

@headinthebox Erik it would be great if you could fix this whole concurrency thing in JavaScript, I know it's short notice but it is the most popular language and it is one currently specifying observables, async pull iterators and syntax into the language.

I know you're a busy guy (and I'm a huge fan) but piggybacking on the fact you showed up - JavaScript could really use your help with concurrency :)

Kris is one of the smartest people I know and I'd love to see what you two can come up with :)

from gtor.

headinthebox avatar headinthebox commented on August 17, 2024

If the JavaScript folks reach out to me, I am happy to jump in.

from gtor.

kriskowal avatar kriskowal commented on August 17, 2024

Twitter appears to be slowly becoming eventually consistent.

from gtor.

headinthebox avatar headinthebox commented on August 17, 2024

@kriskowal this Twitter DM thing is broken, let's use proven email technology ;-)

from gtor.

kriskowal avatar kriskowal commented on August 17, 2024

@jhusain, I trust that you will take @headinthebox at his word and arrange for him to have a chance to present at TC39.

from gtor.

headinthebox avatar headinthebox commented on August 17, 2024

How can I say "no" to @jhusain ;-)

from gtor.

kriskowal avatar kriskowal commented on August 17, 2024

@headinthebox My email is [email protected].

from gtor.

benjamingr avatar benjamingr commented on August 17, 2024

@headinthebox this is us reaching out :)

Observables proposal: https://github.com/zenparsing/es-observable
Streams proposal: https://github.com/whatwg/streams
Promise (Task) cancellation: https://github.com/domenic/cancelable-promise

There are open issues mostly stemming from the fact most people involved don't have the in-depth understanding of the underlying concepts you do nor the experience of pushing them into a programming language and the considerations involved.

There are lots of smart people (like Jafar and Kris) involved in this process and they're learning and it takes time. Your help would have a huge impact on concurrency and data flow problems in JavaScript.

from gtor.

headinthebox avatar headinthebox commented on August 17, 2024

Have you see https://queue.acm.org/detail.cfm?id=2747873. One of the reasons I did that work was to show the JS folks that and how it can be done.

from gtor.

benjamingr avatar benjamingr commented on August 17, 2024

Oh neat, we have our own async/await on the way, the design decisions you mention there sound very familiar. The promise cancellation proposal currently runs all finally blocks on cancellation.

We had async streams proposals (for observables and for pull iterators). Since yield produces an expression in JavaScript libraries have implemented await semantics with it in the interim. Promises are also a standard part of the language now.

function async(iterable){
    let iterator = iterable();
    return Promise.resolve().then(function run(){ // create empty promise and chain
        let {next, done} = iterator.next();
        if(done) return value;
        return Promise.resolve(value).then(run, e => iterator.throw(e));
    });
}

Which lets us do:

let delay = ms => new Promise(r => setTimeout(r, ms));
async(function*(){
    for(var i = 0; i < 10; i++){
         yield delay(1000);
         console.log("Hi" ,i);
    };
});

I'm very worried about the syntactic addition of async functions, observables and pull streams into the standards - there are so many things to get wrong and so few people who are domain experts :)

from gtor.

kriskowal avatar kriskowal commented on August 17, 2024

One of us should probably translate your article on Dart to modern JavaScript.

from gtor.

benjamingr avatar benjamingr commented on August 17, 2024

I'll gladly do it with @headinthebox 's blessing if he'd like.

from gtor.

headinthebox avatar headinthebox commented on August 17, 2024

Absolutely. Without doubt that will reveal some interesting issues.
The actual translation in the Dart compiler is more complex because it has to deal with error, try/finally, ...

from gtor.

jhusain avatar jhusain commented on August 17, 2024

i'm sure the committee would be interested in a presentation from @headinthebox. I know I would be.

from gtor.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.