stdlib-js / stdlib-js/stdlib

[RFC]: tracking issue for missing float16 constants

未关闭
#9,061 5 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
difficulty: 1 priority: Low RFC Tracking Issue
主要语言
JavaScript
星标
6k
派生
1.3k
平均合并
1 天 3 小时
30 天内合并 PR
611

描述

## Description

> What is the feature you are proposing?

A tracking issue to coordinate the implementation of missing `constants/float16/*` packages. Currently, multiple contributors are submitting PRs for float16 constants without visibility into what's already being worked on, leading to duplicate efforts.

## Rationale

> Why is this feature important?

1. **Prevent duplicate PRs** - Contributors can see what's already being worked on
2. **Organize the work** - Clear checklist of what needs to be done
3. **Reduce maintainer burden** - Less time spent reviewing duplicate PRs

There are currently multiple open PRs for the same constants (e.g., `ln-two` has #8972 and #9028, `log2-e` has #8991 and #9029).

## Proposed Solution

> How do you propose to implement this feature?

Create a checklist of all float16 constants that exist in `float32` but not in [float16](cci:7://file:///home/opbotxd/Desktop/vscode/dev/gsoc/stdlib/lib/node_modules/@stdlib/number/float16:0:0-0:0). Contributors can submit PRs referencing this issue.

## Constants to Implement

The following constants exist in `float32` but are missing from [float16](cci:7://file:///home/opbotxd/Desktop/vscode/dev/gsoc/stdlib/lib/node_modules/@stdlib/number/float16:0:0-0:0):

### Mathematical Constants
- [ ] `glaisher-kinkelin` - Glaisher-Kinkelin constant
- [ ] `sqrt-half` - Square root of 1/2
- [ ] `sqrt-half-pi` - Square root of π/2
- [ ] `sqrt-pi` - Square root of π
- [ ] `sqrt-three` - Square root of 3
- [ ] `sqrt-two-pi` - Square root of 2π

### Logarithmic Constants
- [x] `ln-half` - Natural logarithm of 1/2
- [ ] `ln-pi` - Natural logarithm of π
- [ ] `ln-ten` - Natural logarithm of 10
- [ ] `ln-two` - Natural logarithm of 2
- [ ] `ln-two-pi` - Natural logarithm of 2π
- [ ] `ln-sqrt-two-pi` - Natural logarithm of √(2π)
- [ ] `half-ln-two` - Half of natural logarithm of 2
- [ ] `log10-e` - Base 10 logarithm of e
- [ ] `log2-e` - Base 2 logarithm of e

### Technical/Format Constants
- [x] `abs-mask` - Absolute value mask
- [x] `nan` - NaN value
- [ ] `fourth-root-eps` - Fourth root of machine epsilon
- ~~[ ] `gamma-lanczos-g` - Lanczos approximation g value~~
- [ ] `min-base10-exponent` - Minimum base 10 exponent
- [x] `min-base10-exponent-subnormal` - Minimum base 10 exponent (subnormal)
- [x] `max-base10-exponent-subnormal` - Maximum base 10 exponent (subnormal)
- [ ] `min-base2-exponent-subnormal` - Minimum base 2 exponent (subnormal)

### Factorial/Sequence Constants
- [ ] `max-nth-factorial` - Maximum nth factorial
- [ ] `max-nth-double-factorial` - Maximum nth double factorial
- [ ] `max-safe-fibonacci` - Maximum safe Fibonacci number
- [ ] `max-safe-lucas` - Maximum safe Lucas number
- [ ] `max-safe-nth-fibonacci` - Maximum safe nth Fibonacci
- [ ] `max-safe-nth-lucas` - Maximum safe nth Lucas
- [ ] `max-safe-nth-double-factorial` - Maximum safe nth double factorial
- [ ] `max-safe-nth-factorial` - Maximum safe nth factorial
- [ ] `max-safe-nth-tribonacci` - Maximum safe nth Tribonacci

---

### Related Issues

No existing tracking issue found for float16 constants.

### Questions

No.

### Other

No.

### Checklist

- [x] I have read and understood the [Code of Conduct](https://github.com/stdlib-js/stdlib/blob/develop/CODE_OF_CONDUCT.md).
- [x] Searched for existing issues and pull requests.
- [x] The issue name begins with `RFC:`.

贡献指南

打开贡献指南

调研方向

首先比较现有的 constants/float16/* 包与对应的 float32 常量,以选择一个尚未检查的项目。确认该常量是否已经由一个开放的 pull request 覆盖,然后实现选定的包,并在 float16 常量完成后更新此检查清单。

由索引模型根据 Issue 内容生成。

评估

技术栈
javascript
领域
backend
Issue 类型
功能
难度
5/5
预计耗时
一周以上
活跃度
停滞
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。