Skip to content
This repository has been archived by the owner on Jan 24, 2020. It is now read-only.

Finish grammar #17

Open
10 of 22 tasks
LPGhatguy opened this issue Apr 24, 2018 · 2 comments
Open
10 of 22 tasks

Finish grammar #17

LPGhatguy opened this issue Apr 24, 2018 · 2 comments
Labels
enhancement New feature or request

Comments

@LPGhatguy
Copy link
Owner

LPGhatguy commented Apr 24, 2018

In rough order of importance:

  • Precedence (I've been putting this off -- simple explanation of precedence climbing/Pratt parsing)
  • Assignment (depends on varlist)
  • Function Declarations
    • Correct function name declaration (currently only identifiers are allowed)
    • Vararg
    • Anonymous function expression
  • String literals
    • Regular single and double quote forms
    • Long-form strings
  • Comments
    • Infrastructure in tokens for comments
    • Single line comments
    • Multi-line comments
  • Generic For (for-in)
  • Remaining binary operators
  • Function call without parentheses
  • Semicolon as statement separator
  • ParenExpression ('(' expression ')')
  • Lua 5.2 syntax
    • Goto and labels
  • Lua 5.3 syntax
    • Bitwise operators
@LPGhatguy LPGhatguy added the enhancement New feature or request label Apr 24, 2018
@LPGhatguy
Copy link
Owner Author

Precedence is done and it wasn't so bad.

@LPGhatguy
Copy link
Owner Author

Refactored the lexer fairly significantly, which should make testing some of these features easier.

The string literal lexer (which is just double and single quotes) serve as a reasonable example.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant