# Why can I not add methods to a function with a value?

**URL:** <https://discourse.julialang.org/t/why-can-i-not-add-methods-to-a-function-with-a-value/40819>\
**Category:** General Usage\
**Tags:** question\
**Created:** [June 5, 2020, 4:00pm UTC](https://discourse.julialang.org/t/why-can-i-not-add-methods-to-a-function-with-a-value/40819 "2020-06-05T16:00:50Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![stevengj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stevengj/32/71_2.png) [@stevengj](https://discourse.julialang.org/u/stevengj)\
**Post date:** [June 5, 2020, 4:07pm UTC](https://discourse.julialang.org/t/why-can-i-not-add-methods-to-a-function-with-a-value/40819/4 "2020-06-05T16:07:46Z")

</div>

> [@derikk](#):
>
> Yes, I have assigned the 16 methods of `reverse` to the function `f` already

You need to do `f(x) = reverse(x)`, not `f = reverse`, if you want to add additional methods to `f` (without affecting `Base.reverse`). That is, `f` needs to be a _new_ generic function, not an alias for `Base.reverse`.

If you want to add new methods to `Base.reverse` itself, you need to do `Base.reverse(...new args...) = ...new implementation...`, since you’re not allowed to extend methods in other modules without explicitly qualifying them with the module name (or explicitly importing them).

---

_[View the full topic](https://discourse.julialang.org/t/why-can-i-not-add-methods-to-a-function-with-a-value/40819)._
