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

Refactoring Effort #1

Open
8 tasks
svhawkins opened this issue Apr 28, 2024 · 0 comments
Open
8 tasks

Refactoring Effort #1

svhawkins opened this issue Apr 28, 2024 · 0 comments
Assignees
Labels
documentation Improvements or additions to documentation enhancement New feature or request

Comments

@svhawkins
Copy link
Owner

Rework the lexing and parsing process to not be as buggy/imprecise. Make it more robust, flexible, and overall not sh*t.

  • Refactor the tokenizer to either use flex/similar tools or to implement DFA yourself
    • Add unit tests
  • Refactor the parsing part to use bison, self-implemented PDA, or to use recursive descent/ascent and/or other methods.
    • Add unit tests
    • Current 'stack approach' is similar to recursive descent, just doesn't use 'real' recursion 😜
  • Expand the definition of the 'calculator language' based on CC notes from when you took the class
  • Add integration tests
  • (Tentative) Add command-line options to change scanning/parsing methods
  • (Tentative) Perform scanning + parsing in a single pass rather than two
@svhawkins svhawkins added documentation Improvements or additions to documentation enhancement New feature or request labels Apr 28, 2024
@svhawkins svhawkins self-assigned this Apr 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant