-
-
Notifications
You must be signed in to change notification settings - Fork 39
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
[REVIEW]: MicroFloatingPoints.jl: providing very small IEEE 754-compliant floating-point types #7050
Comments
Hello humans, I'm @editorialbot, a robot that can help you with some common editorial tasks. For a list of things I can do to help you, just type:
For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:
|
|
Software report:
Commit count by author:
|
Paper file info: 📄 Wordcount for ✅ The paper includes a |
License info: 🟡 License found: |
@matbesancon, @dannys4, and @mkitti - Thanks for agreeing to review this submission. As you can see above, you each should use the command As you go over the submission, please check any items that you feel have been satisfied. There are also links to the JOSS reviewer guidelines. The JOSS review is different from most other journals. Our goal is to work with the authors to help them meet our criteria instead of merely passing judgment on the submission. As such, reviewers are encouraged to submit issues and pull requests on the software repository. When doing so, please mention We aim for reviews to be completed within about 2-4 weeks. Please let me know if either of you require some more time. We can also use editorialbot (our bot) to set automatic reminders if you know you'll be away for a known period of time. Please feel free to ping me (@danielskatz) if you have any questions/concerns. |
Review checklist for @matbesanconConflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
|
Review checklist for @mkittiConflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
|
Review checklist for @dannys4Conflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
|
In addition to being able to replicate the results presented in the documentation and use these types accordingly, it seems I can easily and successfully employ these types in functions I've written previously without any adjustments (in accordance with the goals of JuliaLang), so I'd consider the functionality phenomenal. While I might recommend automating the tests on the GitHub CI, all tests (which seem very comprehensive) do pass locally. The documentation on the repo is very thorough and incredibly well written! A few minor points on the "tour":
Again, great job, and I wish all developers paid as much attention to detail as you. The document is largely well-written. The only (excessively) minor comment is that "fractional" needs to be spell checked on the caption of Figure 1. After these minor points above are addressed, I'd be more than happy to recommend acceptance. As a final note, in the spirit of JOSS' suggestion we stay objective, this has no bearing on acceptance or rejection; however, I'd urge you to consider using Julia package extensions for future endeavors (example here) to decouple "extra dependencies" (particularly plotting capabilities) from the "core competency" of the package. While the documentation makes a great example of how the plotting can be used as an educational and demonstrative tool, this could very well be an optional tool that can be used on top of the package as opposed to an absolutely necessary "strong" dependency. |
Thanks @dannys4 |
👋 @matbesancon & @mkitti - how are your reviews coming along? |
👋 @goualard-f - Do you have any comments on what @dannys4 brought up? And on the issues that @matbesancon opened? The JOSS review is an iterative process, where you don't need to wait for reviewers to complete their initial passes, but can respond to them as they make comments/suggestions. |
Hi all, The paper motivates a use case of the package:
It is not clear to me what the point of the use of Jupyter is here, is it some usability aspects of the library that are highlighted? What changes compared to other floating point types and libraries? |
The authors provide a package for small IEEE-754 compliant floating point types. This is implemented via parameterized
That is rather the current definition of the struct Floatmu{szE, szf} <: AbstractFloat
v::UInt32
inexact::Int32
end The type could be made more flexible in the following manner: struct Floatmu{szE, szf, T} <: AbstractFloat
v::T
inexact::Int8
end The proposed Additionally a global 32-bit The paper and documentation do not mention the Julia package BFloat16s.jl although the author does reference BFloat. The author should reference this package and explain the relationship of this work to that prior work as part of explaining the State of the Field. The overall paper is quite short with a single figure showing a flaw discovered by using the tools within the paper. In contrast the documentation is extensive with multiple figures and a guided tour. The paper could be extended to include a more thorough description of the package and perhaps include some elements from the documentation and guided tour. There are several software engineering issues that the other reviewers have pointed out. I have submitted some pull requests to the package to try to alleviate some of these issues. The issues include
I am still working through the numerical analysis and my review is ongoing. Overall, the package seems mainly situated as a package meant to analyze the properties of small floating point types rather than providing practical minifloats for use in computational algorithms. Practical use of the package could be improved by addressing the software engineering issues, the global |
thanks @mkitti for your thoughtful and detailed comments. |
Added some text at the beginning of Section Graphics with MicroFloatingPoints.MFPPlot to remind the user to add
Corrected, even though it did not seem to hinder proper compilation.
Corrected (it was performed under the hood).
There is a section called Contributing and reporting issues at the beginning of the documentation but it does not say much, I am afraid, apart from requiring pull requests to contribute.
Corrected.
I was not aware of the existence of package extensions. Thanks for pointed them out. I will be sure to investigate them. Thank you very much for your detailed remarks. I have committed the modifications to the |
Two of the issues have been closed, thanks to @mkitti contributions. I have removed the global variable containing the inexact flag and replaced it by functions with closures. I have also added some text at the beginning of the documentation to make it clear to the prospective user that the package is not about performances but about the versatility of easily defining new floating-point types with different precisions and ranges, something that is not offered by packages such as
I have modified the wording in the paper to make it clearer that Jupyter only brings to the table an integrated environment in which it is easier to test many snippets of code and see the results, thanks to the scripting nature of Julia. Thank you for your remarks that help make this package better! |
Done! archive is now 10.5281/zenodo.13777404 |
@editorialbot recommend-accept |
|
|
👋 @openjournals/csism-eics, this paper is ready to be accepted and published. Check final proof 👉📄 Download article If the paper PDF and the deposit XML files look good in openjournals/joss-papers#5891, then you can now move forward with accepting the submission by compiling again with the command |
@editorialbot accept |
|
Ensure proper citation by uploading a plain text CITATION.cff file to the default branch of your repository. If using GitHub, a Cite this repository menu will appear in the About section, containing both APA and BibTeX formats. When exported to Zotero using a browser plugin, Zotero will automatically create an entry using the information contained in the .cff file. You can copy the contents for your CITATION.cff file here: CITATION.cff
If the repository is not hosted on GitHub, a .cff file can still be uploaded to set your preferred citation. Users will be able to manually copy and paste the citation. |
🐘🐘🐘 👉 Toot for this paper 👈 🐘🐘🐘 |
🚨🚨🚨 THIS IS NOT A DRILL, YOU HAVE JUST ACCEPTED A PAPER INTO JOSS! 🚨🚨🚨 Here's what you must now do:
Any issues? Notify your editorial technical team... |
👋 @goualard-f - Congratulations on your publication!! And thanks to @matbesancon, @dannys4, and @mkitti for reviewing! |
@goualard-f - I now see that you encoded part of your title, which has made https://joss.theoj.org/papers/10.21105/joss.07050 and the associated metadata not very nice. I'm sorry I missed this while proofreading. Can you please remove the encoding in the title in the .md file, and then I will reprocess the paper. |
@danielskatz Indeed. I did not catch it either. Sorry for the inconvenience. Am I supposed to tag the new commit and send its name to you, as before? |
No - JOSS doesn't need the final paper source to be in the repo, as what is archived for the paper is the PDF and the JATS versions, along with the generated metadata. |
@danielskatz I have pushed the corrected |
@editorialbot set main as branch |
Done! branch is now main |
@editorialbot generate pdf |
@editorialbot re-accept |
I'm sorry human, I don't understand that. You can see what commands I support by typing:
|
@editorialbot reaccept |
|
🌈 Paper updated! New PDF and metadata files 👉 openjournals/joss-papers#5893 |
Thanks @goualard-f - now https://doi.org/10.21105/joss.07050 looks good, and I'll close this issue now |
🎉🎉🎉 Congratulations on your paper acceptance! 🎉🎉🎉 If you would like to include a link to your paper from your README use the following code snippets:
This is how it will look in your documentation: We need your help! The Journal of Open Source Software is a community-run journal and relies upon volunteer effort. If you'd like to support us please consider doing either one (or both) of the the following:
|
Submitting author: @goualard-f (Frederic Goualard)
Repository: https://github.com/goualard-f/MicroFloatingPoints.jl.git
Branch with paper.md (empty if default branch): main
Version: joss2024_accepted
Editor: @danielskatz
Reviewers: @matbesancon, @dannys4, @mkitti
Archive: 10.5281/zenodo.13777404
Status
Status badge code:
Reviewers and authors:
Please avoid lengthy details of difficulties in the review thread. Instead, please create a new issue in the target repository and link to those issues (especially acceptance-blockers) by leaving comments in the review thread below. (For completists: if the target issue tracker is also on GitHub, linking the review thread in the issue or vice versa will create corresponding breadcrumb trails in the link target.)
Reviewer instructions & questions
@matbesancon & @dannys4 & @mkitti, your review will be checklist based. Each of you will have a separate checklist that you should update when carrying out your review.
First of all you need to run this command in a separate comment to create the checklist:
The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @danielskatz know.
✨ Please start on your review when you are able, and be sure to complete your review in the next six weeks, at the very latest ✨
Checklists
📝 Checklist for @matbesancon
📝 Checklist for @mkitti
📝 Checklist for @dannys4
The text was updated successfully, but these errors were encountered: