-
Notifications
You must be signed in to change notification settings - Fork 4.3k
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
Add Aiken Language #6991
base: main
Are you sure you want to change the base?
Add Aiken Language #6991
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Whoops. Looks like your editor has changed indentation on the languages.yml file making it incredibly hard to review. Please reverse these changes.
Several of your samples are too big too. If the diff suppresses them, they're too big. Please replace these.
@lildude oh whoops, sorry about that. Total accident. Will fix |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Linguist only accepts TextMate compatible grammars. This is mentioned a little further down in the CONTRIBUTING.md file. You should have encountered an error when attempting to add the grammar using the script/add-grammar
script which should have alerted you to there being problems with the grammar repo.
The lines in script/list-grammars
are for grammars maintained directly in the highlighting engine completely independently of Linguist. Only GitHub staff know which grammars these are which is why this list exists.
There is currently no way to submit tree-sitter grammars.
Please replace the grammar with a TextMate-compatible grammar.
@lildude I have added text mate grammars from the VSCode extension. I simply also added a link to the tree-sitter one that we ALSO have cause I saw that list there. But the thing linked as a sub module is indeed a textmate grammar. I can simply just remove the link from that list. It's not linked as a submodule. |
See #5756
If this is less likely to reach the usage requirements, then yes, remove it from this PR and add later when it does meet requirements. |
No problem. Let's wait and see. We're pretty close for both I believe. It'll be time soon. I'll keep this in sync with master in the meantime. |
supersedes #6520
Description
There was an attempt before to add this language but we decided that it's best to wait until the grammars stabilized. We have reached that point and a general availability release is imminent, so we felt it was appropriate to revisit this with a fresh pull request in favor of the one linked above.
It seems we have reached the appropriate thresholds and there are many repositories with Aiken source code. Untyped Plutus Core is the target lambda calculus that Aiken compiles to. The Aiken vscode extension packages a grammar for Untyped Plutus Core as well so it should already be included by including the Aiken grammar. Although Untyped Plutus Core isn't normally written by hand, it's highly human readable and seems to also be present in a substantial number of repositories. I've included Untyped Plutus Core within this pull request as a matter of convenience but if it's a no-go, then I can make the necessary adjustments.
Aiken is a fast growing smart contract programming language that targets the virtual machine inside of the Cardano network. It has become the de-facto standard for developing smart contracts on Cardano.
Checklist:
#640ff8
#36adbd