Functors.jl icon indicating copy to clipboard operation
Functors.jl copied to clipboard

Parameterise all the things

Results 20 Functors.jl issues
Sort by recently updated
recently updated
newest added

In Flux, we have `trainable` to designate a subset of leaves as nodes to walk when updating parameters for training. In FluxPrune.jl, I defined `pruneable` to designate a subset of...

Suppose I have a type ``` using Functors struct Foo{T1,T2} x::T2 Foo{T1}(x::T2) where {T1,T2} = new{T1,T2}(x) end ``` Then using ``` @functor Foo ``` will not manage to capture the...

One of the things #32 proposes is to disable the use of the cache for some types, so that e.g. the number `4` appearing at two nodes is not regarded...

Traversal functions in Functors.jl currently handle traversal via manual recursion. This isn't the end of the world, but it results in a good amount of code duplication as well as...

I think this is a bug -- `functor(typeof(x), y)` should always use `x`'s field names on `y`: ```julia julia> struct Foo; x; y; end julia> @functor Foo julia> struct AnotherFoo;...

https://github.com/FluxML/Flux.jl/pull/1862 made me realize that this was inconsistent.

This package probably wants a way to write `mapreduce`, to replace e.g. `sum(norm(p) for p in params(m))` in Flux. This seems like the minimal attempt, but it's not Zygote-friendly. Can...

This should just work, right? https://discourse.julialang.org/t/data-science-lessons-making-10-neural-networks-run-on-gpu/74592

I was studying the Flux source code how to create me own layer types. I came across the macro `@functor` whose purpose remained unclear to me. After asking in Slack...

This is a ~~non-breaking~~ (see below) step towards separating all the keywords out of `fmap`. It was a side-effect of working on #41, so I separated the changes out to...