Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AOT/Native-image support #875

Open
tisonkun opened this issue Jun 12, 2018 · 9 comments
Open

AOT/Native-image support #875

tisonkun opened this issue Jun 12, 2018 · 9 comments

Comments

@tisonkun
Copy link
Contributor

@tisonkun tisonkun commented Jun 12, 2018

Is it in considered that MoarVM supports AOT/native-image so one is able to compile a Perl 6/NQP program to an executable running on machine without MoarVM?

@jnthn
Copy link
Member

@jnthn jnthn commented Jun 13, 2018

No, this isn't supported today.

The most likely path to something like in the medium term is building a tool that builds an executable with a static MoarVM linked in to it, and all the precompilations of modules embedded, plus a custom module loader that can locate these.

That's probably blocked at the moment by the Rakudo extops, which rely on being loaded dynamically and would frustrate such an effort. However, those are going away, which would unblock work on such a tool.

That's still not really AOT, but it does give a "one executable to distribute" solution.

@tisonkun
Copy link
Contributor Author

@tisonkun tisonkun commented Jun 13, 2018

The most likely path to something like in the medium term is building a tool that builds an executable with a static MoarVM linked in to it, and all the precompilations of modules embedded, plus a custom module loader that can locate these.

Yes it's common approach of AOT at present.

I'm glad to hear that the blocker has gone, and this issue is as a proposal. There are many benefits if we implement AOT. The most exciting might be efficiency improvement, but the most important, our user base would be expanded( user always likes new things :-) ).

@tbrowder
Copy link
Member

@tbrowder tbrowder commented Jun 11, 2019

This is one of the accepted Perl 6 GSoC 2019 projects.

@tisonkun
Copy link
Contributor Author

@tisonkun tisonkun commented Aug 21, 2019

close as no longer interested in.

@tisonkun tisonkun closed this Aug 21, 2019
@AlexDaniel
Copy link
Contributor

@AlexDaniel AlexDaniel commented Aug 21, 2019

It's a topic for a GSoC project, so I don't think it can be closed…

@AlexDaniel AlexDaniel reopened this Aug 21, 2019
@vhatzist
Copy link

@vhatzist vhatzist commented Oct 14, 2019

Is there an update on the possibility of producing a stand-alone executable?

@JJ
Copy link
Contributor

@JJ JJ commented May 22, 2020

I get this is still residing in an NQP branch, but there are no inmediate plans to incoporate it, right?

@jnthn
Copy link
Member

@jnthn jnthn commented May 22, 2020

I'm not aware of anyone actively working on it right now. However, I think easily producing a standalone image for Raku stuff still is blocked by the extops that Rakudo uses. Recently I eliminated a big chunk of the code in there, and the current dispatch work will get rid of another big chunk of it, so at least by the time somebody is up for working on this again, they'll hopefully not have the extops blocker (or it'll be much easier to deal with).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
7 participants