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

Proposal: Eager Evaluation #47

Open
vknabel opened this issue Jul 28, 2023 · 0 comments
Open

Proposal: Eager Evaluation #47

vknabel opened this issue Jul 28, 2023 · 0 comments
Assignees
Labels
proposal Lithia Evolution proposal or draft

Comments

@vknabel
Copy link
Owner

vknabel commented Jul 28, 2023

Introduction
Currently Lithia implements lazy evaluation. This should be changed to eager evaluation.

Motivation
Multiple traits of Lithia combined may lead to situations that are hard to debug.

  • dynamic type system
  • strict type errors
  • lazy evaluation

All three features combined may lead to the program crashing in completely different code paths than the actual error occurred.

Proposed Solution
As a solution we want to break the cycle. Of course, this change is radical, but touching any other aspect would change Lithia fundamentally. Lazy evaluation is just optional.

@vknabel vknabel added the proposal Lithia Evolution proposal or draft label Jul 28, 2023
@vknabel vknabel added this to the v0.1.0 The eager update milestone Jul 28, 2023
@vknabel vknabel self-assigned this Jul 28, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
proposal Lithia Evolution proposal or draft
Projects
Status: New Issues
Development

No branches or pull requests

1 participant