MicroFloatingPoints.jl

MicroFloatingPoints.jl: providing very small IEEE 754-compliant floating-point types - Published in JOSS (2024)

https://github.com/goualard-f/microfloatingpoints.jl

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    2 of 3 committers (66.7%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.4%) to scientific vocabulary

Keywords

floating-point ieee-754
Last synced: 6 months ago · JSON representation ·

Repository

A Julia package to manipulate very small IEEE 754 standard-compliant floating-point numbers.

Basic Info
  • Host: GitHub
  • Owner: goualard-f
  • License: lgpl-3.0
  • Language: Julia
  • Default Branch: main
  • Homepage:
  • Size: 2.04 MB
Statistics
  • Stars: 12
  • Watchers: 1
  • Forks: 2
  • Open Issues: 0
  • Releases: 13
Topics
floating-point ieee-754
Created almost 5 years ago · Last pushed over 1 year ago
Metadata Files
Readme Contributing License Citation

README.md

MicroFloatingPoints

The MicroFloatingPoints package defines the Floatmu parametric type to manipulate IEEE 754 standard-compliant floating-point numbers with a very small size (from 5 bits up to 32 bits).

Example of use

Adding 0.25 and 2.0 in a floating-point format with 1 bit for the sign (implied), 2 bits for the exponent, and 2 bits for the fractional part (3 bits for the whole significand with the hidden bit), and testing whether the result had to be rounded:

``` julia julia> using MicroFloatingPoints

julia> Floatmu{2,2}(0.25)+Floatmu{2,2}(2.0) 2.0

julia> inexact() true ```

Installation

The package can be installed with the Julia package manager. From the Julia REPL, type ] to enter the Pkg REPL mode and run:

julia pkg> add MicroFloatingPoints

Or, equivalently, via the Pkg API:

julia julia> import Pkg; Pkg.add("MicroFloatingPoints")

Optionally, to enable plotting, install either one of PyPlot.jl or PythonPlot.jl as follows.

julia-repl julia> import Pkg; Pkg.add("PyPlot")

OR

julia-repl julia> import Pkg; Pkg.add("PythonPlot")

Note that the matplotlib Python package must be available through PyCall or PythonCall. This is usually setup when installing PyPlot.jl or PythonPlot.jl, which are optional (weak) dependencies that provide plotting backends via package extensions.

Documentation

Project status

The package is developed and has been tested on Julia 1.6 through 1.10.

Owner

  • Name: Frédéric GOUALARD
  • Login: goualard-f
  • Kind: user
  • Company: Nantes Université, France

Citation (CITATION.cff)

cff-version: "1.2.0"
authors:
- family-names: Goualard
  given-names: Frédéric
  orcid: "https://orcid.org/0000-0002-1798-1568"
doi: 10.5281/zenodo.13777404
message: If you use this software, please cite our article in the
  Journal of Open Source Software.
preferred-citation:
  authors:
  - family-names: Goualard
    given-names: Frédéric
    orcid: "https://orcid.org/0000-0002-1798-1568"
  date-published: 2024-09-18
  doi: 10.21105/joss.07050
  issn: 2475-9066
  issue: 101
  journal: Journal of Open Source Software
  publisher:
    name: Open Journals
  start: 7050
  title: "MicroFloatingPoints.jl: providing very small
    IEEE 754-compliant floating-point types"
  type: article
  url: "https://joss.theoj.org/papers/10.21105/joss.07050"
  volume: 9
title: "MicroFloatingPoints.jl: providing very small
  IEEE 754-compliant floating-point types"

GitHub Events

Total
Last Year

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 92
  • Total Committers: 3
  • Avg Commits per committer: 30.667
  • Development Distribution Score (DDS): 0.141
Past Year
  • Commits: 29
  • Committers: 3
  • Avg Commits per committer: 9.667
  • Development Distribution Score (DDS): 0.448
Top Committers
Name Email Commits
Frédéric Goualard F****d@u****r 79
Mark Kittisopikul m****t@g****m 12
Daniel S. Katz d****z@i****g 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 8
  • Total pull requests: 7
  • Average time to close issues: 5 months
  • Average time to close pull requests: about 22 hours
  • Total issue authors: 5
  • Total pull request authors: 3
  • Average comments per issue: 3.0
  • Average comments per pull request: 0.29
  • Merged pull requests: 6
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 4
  • Pull requests: 7
  • Average time to close issues: 12 days
  • Average time to close pull requests: about 22 hours
  • Issue authors: 2
  • Pull request authors: 3
  • Average comments per issue: 1.75
  • Average comments per pull request: 0.29
  • Merged pull requests: 6
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • matbesancon (3)
  • tkgunaratne (2)
  • goualard-f (1)
  • chakravala (1)
  • JuliaTagBot (1)
Pull Request Authors
  • mkitti (8)
  • danielskatz (4)
  • goualard-f (2)
Top Labels
Issue Labels
enhancement (1)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads: unknown
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 9
juliahub.com: MicroFloatingPoints

A Julia package to manipulate very small IEEE 754 standard-compliant floating-point numbers.

  • Versions: 9
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 0 Total
Rankings
Dependent repos count: 9.9%
Average: 37.7%
Dependent packages count: 38.9%
Stargazers count: 48.5%
Forks count: 53.5%
Last synced: 6 months ago

Dependencies

.github/workflows/TagBot.yml actions
  • JuliaRegistries/TagBot v1 composite
.github/workflows/ci.yml actions
  • actions/checkout v4 composite
  • julia-actions/setup-julia latest composite