# How did we get here? (Why is Julia such a messy language?)

**URL:** <https://discourse.julialang.org/t/how-did-we-get-here-why-is-julia-such-a-messy-language/118839>\
**Category:** Internals & Design\
**Created:** [August 31, 2024, 11:57am UTC](https://discourse.julialang.org/t/how-did-we-get-here-why-is-julia-such-a-messy-language/118839 "2024-08-31T11:57:31Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![Mason](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mason/32/2423_2.png) [@Mason](https://discourse.julialang.org/u/Mason)\
**Post date:** [August 31, 2024, 12:25pm UTC](https://discourse.julialang.org/t/how-did-we-get-here-why-is-julia-such-a-messy-language/118839/3 "2024-08-31T12:25:23Z")

</div>

> I thought the language was pristine, beautiful, and clean, but the truth is, it’s messy and there are dragons everywhere.

It turns out almost nothing in this world is “pristine beautiful and clean” while also being useful for complicated tasks (at least if we take those things to mean "so simple that a random person can be expected to understand everything there is to to know about every level of it)

This very much just seems like a mirror of your experience with posting about video games in the transition from

> [@Should we make a push into gaming industry?](https://discourse.julialang.org/t/should-we-make-a-push-into-gaming-industry/98792):
>
> The game industry suffers from the two-culture problem as game designers want high-level languages and game programmers want performant languages. C++ is common for game development today. Is the time ready to create a game development ecosystem in Julia? If it is, what are the strengths and weaknesses of Julia? What niche should we explore first to capitalize on Julia’s strength? Optimistically, can we be greedy with game development too? Can we list what we want in a game/game engine?

to

> [@It ain't easy making a high-performance game. I want to cry](https://discourse.julialang.org/t/it-aint-easy-making-a-high-performance-game-i-want-to-cry/106735):
>
> Well, I dreamed of a game so immersive you could fight like movie characters fight, with lots of units, with complex character building, and so on. One aspect I need is a high-performance simulation of the game world. Making a high-performance game engine IS really difficult. I want to cry. Now, imagine I want to have some units fighting. struct Unit health::Float64 attack::Float64 #Bla bla bla... end function attack!(x::Unit,y::Unit) y.health -= x.attack #Bla bla bla... …

Some things are just complicated. A good language can make it easier to think about and deal with complicated problems, but it won’t _remove_ the complexity.

---

_[View the full topic](https://discourse.julialang.org/t/how-did-we-get-here-why-is-julia-such-a-messy-language/118839)._
