Rework Lexer #10

Closed
opened 2026-04-30 10:20:55 -06:00 by laentropia · 0 comments
Owner

What?

Currently the lexer is very poorly written, while it now uses generic Arrays it stills is very bad and a rewrite this early will be good for the overall project health

Why?

Well, it is not sufficient, is not scalable for new operands, it takes responsability for ensuring structure, something that the parser should do. In generall it can be improved in many ways and that is the goal.

How?

I'm going to reserach about how to write a good lexer, specifically one that pairs well with pratt parsing (just need it to work fine i guess) so that it's more compatible and can be better tested.

# What? Currently the lexer is very poorly written, while it now uses generic Arrays it stills is very bad and a rewrite this early will be good for the overall project health # Why? Well, it is not sufficient, is not scalable for new operands, it takes responsability for ensuring structure, something that the parser should do. In generall it can be improved in many ways and that is the goal. # How? I'm going to reserach about how to write a good lexer, specifically one that pairs well with pratt parsing (just need it to work fine i guess) so that it's more compatible and can be better tested.
laentropia added this to the First working version of calculator milestone 2026-04-30 10:20:55 -06:00
laentropia added the Kind/Enhancement
Priority
Critical
1
labels 2026-04-30 10:20:55 -06:00
laentropia self-assigned this 2026-04-30 10:20:55 -06:00
laentropia added this to the Calculator project 2026-04-30 10:20:55 -06:00
laentropia moved this to In Progress in Calculator on 2026-04-30 10:21:34 -06:00
laentropia moved this to Done in Calculator on 2026-05-12 20:09:27 -06:00
Sign in to join this conversation.