augustss / MicroHs

Haskell implemented with combinators
Other
367 stars 25 forks source link

Turn eval into evali #28

Closed jmaessen closed 10 months ago

jmaessen commented 10 months ago

This is based on the observation that two things can happen in eval:

In either case there's no need to push / pop it again and go chasing after indirections.

This represents a small time savings of about .2s on bootstrap, see https://docs.google.com/spreadsheets/d/1Tw6LLwTEU0VxdWcf_ZUF1_T9KlchpNEFXKNiAarxd4I which shows data from 10 interleaved after/before runs plus some statistically bootstrapped averages with histograms showing limited overlap.

augustss commented 10 months ago

Excellent observation.