JuliaDiff / JuliaDiff/ForwardDiff.jl

`NaNMath` (and `SpecialFunctions`) as extensions?

Open
#648 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Julia
Stars
1k
Forks
160
PR merge metrics
No merged PRs in 30d

Description

in particular, this code seems really weird:

https://github.com/JuliaDiff/ForwardDiff.jl/blob/226374984ec70b96c89053640b267a5c5543781d/src/dual.jl#L463-L477

in particular because NaNMath is loaded beforehand:

https://github.com/JuliaDiff/ForwardDiff.jl/blob/226374984ec70b96c89053640b267a5c5543781d/src/ForwardDiff.jl#L10

The same thing can be said about SpecialFunctions.

I noticed that DiffRules also depends on NaNMath and SpecialFunctions, but does not load those packages. ForwardDiff does.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading src/dual.jl lines 463-477 and src/ForwardDiff.jl line 10, then compare how DiffRules handles its NaNMath and SpecialFunctions dependencies. Clarify whether these packages should be loaded directly or exposed as extensions, and identify the dependency behavior that should be covered before making a change.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
tooling
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.