# Allowing the object.method(args...) syntax as an alias for method(object, args ...)

**URL:** https://discourse.julialang.org/t/allowing-the-object-method-args-syntax-as-an-alias-for-method-object-args/62051
**Category:** Internals & Design
**Tags:** question, design
**Created:** [May 29, 2021, 5:09pm UTC](https://discourse.julialang.org/t/allowing-the-object-method-args-syntax-as-an-alias-for-method-object-args/62051 "2021-05-29T17:09:54Z")
**Posts on this page:** 1
**Showing post:** 102

<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 25, 2021, 2:56pm UTC](https://discourse.julialang.org/t/allowing-the-object-method-args-syntax-as-an-alias-for-method-object-args/62051/102 "2021-06-25T14:56:19Z")

</div>

> [@gianmariomanca](#):
>
> adding the extra option in the language to support internal methods and encapsulation

This has nothing to do with OOP per se. It sounds like you just want a namespace with “private” identifiers (e.g. private fields, private methods). This could certainly be implemented in Julia, and has been discussed multiple times — see [this document](https://github.com/JuliaLang/Juleps/blob/cjf/internal-properties/InternalProperties.md) and links therein.

It could even be accomplished to some degree without any language changes, e.g. as demonstrated in the [PrivateModules.jl](https://github.com/MichaelHatherly/PrivateModules.jl) package or in [this discussion](https://discourse.julialang.org/t/private-properties-in-julia-0-7/10785/5).

In practice, it seems like none of these proposals have caught on very much, for reasons that have nothing to do with OOP vs. multiple dispatch. When you want to mark something as private and simply not documenting it seems insufficient, people often begin the identifier with an underscore. The compiler still doesn’t enforce anything, but if someone calls `MyModule._some_internal_function(...)` they are clearly doing so at their own risk, and this could easily be checked for automatically by linting tools.

---

_[View the full topic](https://discourse.julialang.org/t/allowing-the-object-method-args-syntax-as-an-alias-for-method-object-args/62051)._
