Haskell FSRS Implementation #39
zacharydscott
started this conversation in
Show and tell
Replies: 1 comment 1 reply
-
|
Hey man, looks really cool! Also, I like that you made it interoperable with py-fsrs (though I haven't verified this).
There isn't currently a "gold standard" of what FSRS should look like, but in general, fsrs-rs is generally considered the source of truth since 1) that's where Jarrett spends most of his time and 2) |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hi, everyone. I love the project, I got a bit inspired to contribute in a small, admittedly niche, way. I'm wrapping up the Haskell Implementation of the the main FSRS algorithm, and am planning to do a rust bind to the optimizer similar to other languages. I'm still putting some polish on it. That mostly amounts to adding nix for contributors, though I doubt that will be strictly necessary, and rounding out the documentation. Right now I've got some ramblings in there that everyone should feel free to comment on.
Here's the repo, here's what I have so far.
I've made the Python implementation the "gold standard" and made sure they're interoperable when sharing JSON serialized cards and parameters. If that's incorrect, I can edit it to follow the Rust or Typescript version instead. I haven't actually seen a shared test suite across languages, but I could have missed it. If anyone is interested, I can try and work out a generalized test harness to keep implementations in line.
I'm open to any feedback. Haskell has been a little hobby language for me lately, I don't count myself an expert at it at all. This has been learning for me, and I'm sure there's some sloppiness to clean up. I just wanted to get some initial feedback and hopefully we can move it in to the OSR namespace if everyone is happy with it. Thanks for taking the time to read and/or check out the code.
Beta Was this translation helpful? Give feedback.
All reactions