Skip to content

Commit a2d0b16

Browse files
Merge pull request #86 from SciML/ChrisRackauckas-patch-1
Let people know about StaticNumbers.jl
2 parents 979087a + d1aca7d commit a2d0b16

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

README.md

+8
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,11 @@ julia> known(typeof(1)) === nothing # `Int` has no compile time known value
3131
true
3232

3333
```
34+
35+
## Types, Dispatch, Compile-Time, and StaticNumbers.jl
36+
37+
Static.jl does not subtype the Base number types. For example, `!(StaticInt <: Integer)`. The reason for this is that it
38+
invalidates all downstream compilation caches. This has a major effect, for example, causing LoopVectorization.jl to
39+
not precompile and ultimately giving the ODE solvers >20 second extra compile times. To avoid these invalidations, the
40+
dispatches were removed. An alternative library [StaticNumbers.jl](https://github.com/perrutquist/StaticNumbers.jl) is
41+
more ergonomic but has these invalidations. Use the library that is more appropriate for your use case.

0 commit comments

Comments
 (0)