stdlib-js / stdlib-js/stdlib

[RFC]: tracking issue for missing float16 constants

Abierto
#9,061 5 comentarios 0 reacciones 0 asignados Ver en GitHub
difficulty: 1 priority: Low RFC Tracking Issue
Lenguaje dominante
JavaScript
Estrellas
6k
Forks
1.3k
Merge medio
1 d 3 h
PR fusionados (30 d)
611

Descripción

## 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:`.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Start by comparing the existing constants/float16/* packages with the corresponding float32 constants to choose one unchecked item. Confirm whether that constant is already covered by an open pull request, then implement the selected package and update this checklist when the float16 constant is complete.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
javascript
Área
backend
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.