# The current state of function naming style

**URL:** <https://discourse.julialang.org/t/the-current-state-of-function-naming-style/136849>\
**Category:** General Usage\
**Tags:** function, style\
**Created:** [April 24, 2026, 11:33am UTC](https://discourse.julialang.org/t/the-current-state-of-function-naming-style/136849 "2026-04-24T11:33:10Z")\
**Posts on this page:** 1\
**Showing post:** 7

<div class="post-metadata">

**Author:** ![goerz](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/goerz/32/3269_2.png) [@goerz](https://discourse.julialang.org/u/goerz)\
**Post date:** [April 24, 2026, 12:11pm UTC](https://discourse.julialang.org/t/the-current-state-of-function-naming-style/136849/7 "2026-04-24T12:11:47Z")

</div>

> [@\[ANN\] UpSetPlot.jl](https://discourse.julialang.org/t/ann-upsetplot-jl/136848/2):
>
> I would try to rename the functions to make them more idiomatic for Julia users

I would urge you _not_ to use `mashedcase`. It is probably the worst style decisions that ever made it into Julia. The problem with `mashedcase` is that is does not scale: _at some point_, `mashedcase` becomes completely unreadable. Where exactly it crosses the boundary from “readable” to “I have to include some underscores” is pretty subjective. The result is that the names of functions become unpredictable.

My recommendation is to leave `mashedcase` for Julia core, and use `snake_case` consistently for functions throughout the ecosystem, and `CamelCase` for types and modules.

---

_[View the full topic](https://discourse.julialang.org/t/the-current-state-of-function-naming-style/136849)._
