-
Notifications
You must be signed in to change notification settings - Fork 16
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
Lin2/STM2: Port Lin and STM to QCheck2 #497
Comments
Can i work on this issue? |
You are welcome to give it a stab - this is open source after all! 🙂 What's your experience with OCaml. the |
I am a bit familiar with the syntax of OCaml, and I know some concepts related to software testing. The Lin and STM libraries are among the tools I remember |
OK. In that case I would suggest
Oh? I'm curious to learn where you have heard of these two libraries before? 🤔 |
Thanks for the suggestions! I'll begin by contributing to QCheck and learning about the libraries. This will help me understand things better before working on the task. I came across these libraries while exploring tools for testing, I just read the abbreviation and remembered it as STM for my academic. |
Hm. Despite the same acronym, the OCaml There's a description here: https://github.com/ocaml-multicore/multicoretests?tab=readme-ov-file#a-parallel-state-machine-testing-library and a short paper here: https://github.com/ocaml-multicore/multicoretests/blob/main/doc/paper.pdf |
I will definitely refer to them, thankyou for the clarification Sir! |
Sir @jmid, after going through the codebase and resources, I see there’s a lot to explore in this tech stack. It’s really interesting! I’ve started a tutorial on OCaml and the libraries. A small suggestion: could you provide a step-by-step guide for beginners on where to start contributing to this organization? What would that be? And from the above discussion, I just wanted to clarify that my knowledge of these libraries is mostly theoretical. I’ve never implemented them in practice, so it’s taking me some time to understand these concepts fully. |
Thanks! For this repository my recommendation in #497 (comment) still stands. As for the other ocaml-multicore repositories, I recommend asking on the ones that you would like to help out on. |
Lin
andSTM
are both based on the battle-testedQCheck
module fromqcheck-core
.The
QCheck2
module however offers integrated shrinking, which should simplify the interface a bit, e.g.,shrink_cmd
function andQCheck2.Gen.t
(as opposed to the currentQCheck.arbitrary
andQCheck.Gen.t
mix)For this reason, we should experiment with porting the libraries to
QCheck2
.Note: This may hit and involve improvements to
QCheck2
's shrinkers, such as c-cube/qcheck#157.The text was updated successfully, but these errors were encountered: