<p dir="auto">Given its role in ternary expressions (and perhaps in more upcoming syntactic constructs?), isn't letting <code class="notranslate">?</code> be used as a variable name allowing too much room for potential confusion?</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="julia&gt;  ? = true
true

julia&gt;  ??!?:?
false

julia&gt;  !??!?:!??!?:?
true

julia&gt;  !???:!?:?
false:true

julia&gt; (x-&gt;(?-&gt;?(?))(?-&gt;x(x-&gt;?(?)(x))))(x-&gt;(?-&gt;(?==0?1:(?*x(?-1))))).(?:?&lt;&lt;?&lt;&lt;?)
4-element Array{Int64,1}:
  1
  2
  6
 24"><pre class="notranslate"><code class="notranslate">julia&gt;  ? = true
true

julia&gt;  ??!?:?
false

julia&gt;  !??!?:!??!?:?
true

julia&gt;  !???:!?:?
false:true

julia&gt; (x-&gt;(?-&gt;?(?))(?-&gt;x(x-&gt;?(?)(x))))(x-&gt;(?-&gt;(?==0?1:(?*x(?-1))))).(?:?&lt;&lt;?&lt;&lt;?)
4-element Array{Int64,1}:
  1
  2
  6
 24
</code></pre></div>
<p dir="auto">(also isn't it amazing that these even parse?) Anyway, I suppose, unless one really wants to use <code class="notranslate">?</code> as a function or macro name, that this possibility could be deprecated?</p>
<p dir="auto">I have a composite type which has a single Dict property that I thought would be interesting to access with an overloaded ? operator</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="type J9Type
    propDict::Dict
end
function ?(obj::J9Type,field::Union(Symbol,String))
    return get(obj.propDict,field,Nothing())
end
A = J9Type([:p1=&gt;1,:p2=&gt;2,:p3=&gt;7])"><pre class="notranslate"><code class="notranslate">type J9Type
    propDict::Dict
end
function ?(obj::J9Type,field::Union(Symbol,String))
    return get(obj.propDict,field,Nothing())
end
A = J9Type([:p1=&gt;1,:p2=&gt;2,:p3=&gt;7])
</code></pre></div>
<p dir="auto">I found that I could only use my overloaded <code class="notranslate">?</code> operator if I mention it before hand, even with a comment.  Otherwise it says that <code class="notranslate">?</code> is not a generic function.</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="#?
?(A,:p1)"><pre class="notranslate"><code class="notranslate">#?
?(A,:p1)
</code></pre></div>