gkz / LiveScript

LiveScript is a language which compiles to JavaScript. It has a straightforward mapping to JavaScript and allows you to write expressive code devoid of repetitive boilerplate. While LiveScript adds many features to assist in functional style programming, it also has many improvements for object oriented and imperative programming.
http://livescript.net
MIT License
2.31k stars 155 forks source link

Status on `async` / `await` straight through compilation? #977

Closed ozra closed 6 years ago

ozra commented 6 years ago

I know there is a number of issues on this and related, I just post this to get a fresh up to date perspective.

I'm back to some contract nodejs-coding for the first time in a few years of mainly systems coding. Now it seems Koa and similar frameworks are established enough to be usable. So of course I want to do that. And of course I want to code in LiveScript.

So, what gives?

vendethiel commented 6 years ago

836 is interesting, but has no tests. The PR should still work, since lsc doesn't move very fast.

You'd need @rhendric 's approval though.

Doesn't co work with yield though? Did Koa switch to full async/await?

Otherwise, which fork is best maintained (following gkz/) with the feature

I only know of @summivox 's fork

any consensus in the LS-community?

I don't think that's active enough to reach such a consensus.

ozra commented 6 years ago

Thanks for the intell @vendethiel! I've just started gathering intell on what techs to use for the nodejs part.

LS is a given, even though I will most likely compile it down to JS further down the line for other developers to maintain.

From what I've quickly gleaned Koa2 seems to go the async / await road.

I'm gonna evaluate available options a bit more before nailing down the roadmap.

Thanks again!

ozra commented 6 years ago

I can only hope #836 will end up in a release soon.

Is lack of tests and documentation what hinders it from happening?

For now I'm trying out the livescript-async npm uploaded by @gkovacs.

rhendric commented 6 years ago

Tests at least. (I don't have a plan for dealing with LS documentation issues in general; the website hasn't been updated since the 1.4 release and I haven't looked into what it would take to bring it up to date.)

I haven't reviewed the code in that PR yet; I'm waiting for its author to add tests and tell me that it's ready for a review, since it's been a work in progress for so long. If review turns up any issues, obviously someone will have to deal with those.

summivox commented 6 years ago

I'm on vacation and honestly I haven't been able to spare time on this project for quite a while.

Ryan can you take over?

On Tue, Sep 19, 2017, 13:21 Ryan Hendrickson notifications@github.com wrote:

Tests at least. (I don't have a plan for dealing with LS documentation issues in general; the website hasn't been updated since the 1.4 release and I haven't looked into what it would take to bring it up to date.)

I haven't reviewed the code in that PR yet; I'm waiting for its author to add tests and tell me that it's ready for a review, since it's been a work in progress for so long. If review turns up any issues, obviously someone will have to deal with those.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/gkz/LiveScript/issues/977#issuecomment-330661824, or mute the thread https://github.com/notifications/unsubscribe-auth/ABsEGU5CTHVcgPPzfPSbeycndoogL8mhks5skCJUgaJpZM4PcaiP .

--


Yin Zhong

rhendric commented 6 years ago

I don't have a lot of disposable time, myself. Someone who feels strongly about having this feature in official LiveScript should pick it up in this case.

gkovacs commented 6 years ago

@rhendric I'm happy to pick this up as I've been using this feature in production for several months now, I've made a new pull request containing tests at https://github.com/gkz/LiveScript/pull/978 please review when you have time, thank you.

rhendric commented 6 years ago

978 has landed!