title: How to add the bang character to functors?
body: <p>By convention, we add a bang character <code>!</code> to any function name that mutates its arguments, so for the following code example, should we add a <code>!</code> to the functor name?</p>
  <pre><code>mutable struct Foo
      a::Int
  end
  
  (foo::Foo)(val) = foo.a = val
  
  f = Foo(1)  # f.a = 1
  f(10)       # f.a = 10
  </code></pre>
  <p>In short, is it possible to call the last line as <code>f!(10)</code>? I am just curious. Thanks.</p>