-
-
Notifications
You must be signed in to change notification settings - Fork 252
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
added Raku info to languages.json #364
Conversation
If you think the change to remove them, is worth it lets do that. Im happy to go along with whatever you suggest. |
Let me know if you want to do it, otherwise ill merge and all good. |
aa4a9d9
to
a238144
Compare
force-pushed after adding I'll remove those extensions tomorrow. Let's let it sit a few days to see if i can get some more eyes on it from people more experienced with Raku than me. |
Works for me. Say the word and ill merge it in. |
ecab9cc
to
c507bd5
Compare
Update: rebased and force-pushed with the following changes to what was there already
Note that I haven't added ALL of the unicode things, just the ones that match up to comparators, as things like multiplication and assignment (of which raku has many forms) don't seem to be included in |
note: also removed perl6 from the shebang list for perl since perl6 is a different language (now called raku)
c507bd5
to
a18589b
Compare
.... and another
Open question: Raku has something similar to Ruby's Heredocs. It's unclear how to encode that in in Raku we've got my $foo = q:to/END/
some stuff
END and my $foo = qq:to/END/
more stuff
END "END" could be any text. THe compiler just scans the following lines until it sees a line with only that on it.
(there may be other in ruby you've got the same thing query = <<-SQL
SELECT * FROM food
WHERE healthy = true
SQL and query = <<~SQL
SELECT * FROM food
WHERE healthy = true
SQL
`<<-` vs `<<~` is relative to how it handles indentation |
That is an edge case that currently is NOT catered for. Something to mull over. #365 |
I don't expect any more feedback on this from the intarwebs and have no plans for poking it more unless requested. I know the JSON is valid but i'm not sure how to actually test that everything works. If you can provide me instructions on how to verify that everything is matching correctly i can put together a test file with all this stuff in it and validate it against instructions. |
If you can point me in the direction of a file, which you know the counts for I can verify myself. Otherwise adding one into https://github.com/boyter/scc/tree/master/examples/language works, as that's what I implement all the tests against. |
Fixes Issue #362
source refereneces
Source for 99% of the complexity stuff is here in the Raku docs
The all-caps ones are Phasers and I think they should be included but I'm not 100% sure.
All the various quote marks come from here in the grammar
except for
«
and»
which are actually defined a few times in a few ways in the grammar (context alters meaning) Sometimes they function as quote marks. Sometimes they're...more.[edit]: added
react
andwhenever
from the concurrency docs.Notes
Also of note is "emit" which is in the flow control docs but wasn't clear if it should be included for the complexity check or not.
I've also specifically not included tests like
<
andlt
because other languages seemed to not include those.I've also removed perl6 from the shebang list
for perl since perl6 is a different language
(now called raku).
My recommendation would be to remove those from this PR because no-one's using them anymore and a fair amount of that ancient code with old extensions doesn't work anymore anyways. Just holler and I'll make that change.
License Declaration
I Kay Rhodes (a.k.a masukomi) explicitly license this contribution under the MIT AND Unlicense licenses.