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

How Perl6 process the type #2876

Closed
mistricky opened this issue May 4, 2019 · 3 comments
Closed

How Perl6 process the type #2876

mistricky opened this issue May 4, 2019 · 3 comments

Comments

@mistricky
Copy link

The Problem

I have a confuse about type mechanism of Perl6, because I can write this code in Perl6

sub foo(Int bar){ ... }

That I can explicitly declare type in Perl6, I want to know is there any special processor of type mechanism in Perl6?
And I want to know Does Perl6 have compile time? the code come in compile time first, then come in interpreter? the special processor of type exist in compile time?

Thx for your answers

@vendethiel
Copy link
Contributor

That I can explicitly declare type in Perl6, I want to know is there any special processor of type mechanism in Perl6?

Yes, see the docs page on Perl 6's Type System.

And I want to know Does Perl6 have compile time? the code come in compile time first, then come in interpreter? the special processor of type exist in compile time?

Yes, Perl 6 has a compilation phase (most scripting languages do nowadays). The early type errors come IIRC at this moment from the Optimizer

@mistricky
Copy link
Author

Oh Thx for your reply, this answer resolve my question. Thx :)

can you answer to me does Perl6 has JIT like most scripting languages?
and I don't understand what IIRC means. :(

@coke
Copy link
Collaborator

coke commented May 7, 2019

IIRC is "if I recall correctly"

The rakudo implementation of perl6 has multiple backends- moarvm is the custom VM that does have a JIT. Using the Java or is backends-, you get whatever those vms provide for a JIT.

@coke coke closed this as completed May 7, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants