Get the latest tech news
Implementing SM-2 in Rust
An implemenation of the SuperMemo-2 algorithm.
From a card’s state, we can calculate its interval: the number of days after the most recent test when the item should be reviewed again. With two predicates, to test whether this quality value implies the forgetting, and whether the item needs to be repeated at the end of the session: An item’s state is just its values of $n$ and $\text{EF}$ (exact due date timestamps would be implemented outside the system):
Or read this on Hacker News