# Seeking short examples to "sell" Julia's type system

**URL:** <https://discourse.julialang.org/t/seeking-short-examples-to-sell-julias-type-system/93502>\
**Category:** Teaching & Outreach\
**Tags:** type\
**Created:** [January 25, 2023, 12:04pm UTC](https://discourse.julialang.org/t/seeking-short-examples-to-sell-julias-type-system/93502 "2023-01-25T12:04:07Z")\
**Posts on this page:** 1\
**Showing post:** 17

<div class="post-metadata">

**Author:** ![mkitti](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mkitti/32/12459_2.png) [@mkitti](https://discourse.julialang.org/u/mkitti)\
**Post date:** [January 25, 2023, 11:34pm UTC](https://discourse.julialang.org/t/seeking-short-examples-to-sell-julias-type-system/93502/17 "2023-01-25T23:34:14Z")

</div>

There are some good examples in this thread of the type system and multiple dispatch here:

> [@Is multiple dispatch the same as function overloading?](https://discourse.julialang.org/t/is-multiple-dispatch-the-same-as-function-overloading/4145/5):
>
> The main difference between multiple dispatch and function overloading (esp. as implemented in C++/other OOP langs.) is that overloaded functions still generally have an implicit receiver of fixed type, which constrains method dispatch to only those variants defined for the receiver. Julia, on the other hand, being more of a functional language, dispatches on all arguments. The classic way of demonstrating this is to imagine you are implementing a game of Asteroids™. As part of the implementati…

Also see this talk (now embedded):

[![](https://global.discourse-cdn.com/julialang/original/3X/c/5/c5a2f02c81c376da005f8610ce9cdd4ad47cfdf4.jpeg "JuliaCon 2019 | The Unreasonable Effectiveness of Multiple Dispatch | Stefan Karpinski") ](https://www.youtube.com/watch?v=kc9HwsxE1OY)

---

_[View the full topic](https://discourse.julialang.org/t/seeking-short-examples-to-sell-julias-type-system/93502)._
