# How to create non-abstract subtypes of built-in abstract types? What is the Julia's substitute for Interfaces?

**URL:** <https://discourse.julialang.org/t/how-to-create-non-abstract-subtypes-of-built-in-abstract-types-what-is-the-julias-substitute-for-interfaces/14741>\
**Category:** General Usage\
**Created:** [September 9, 2018, 6:29pm UTC](https://discourse.julialang.org/t/how-to-create-non-abstract-subtypes-of-built-in-abstract-types-what-is-the-julias-substitute-for-interfaces/14741 "2018-09-09T18:29:18Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![Tamas\_Papp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tamas_papp/32/25949_2.png) [@Tamas\_Papp](https://discourse.julialang.org/u/Tamas_Papp)\
**Post date:** [September 10, 2018, 9:05am UTC](https://discourse.julialang.org/t/how-to-create-non-abstract-subtypes-of-built-in-abstract-types-what-is-the-julias-substitute-for-interfaces/14741/4 "2018-09-10T09:05:22Z")

</div>

> [@AdamR](#):
>
> Where do I find the documentation of `Range` type hierarchy? Should I ask the devs?

I am afraid that even the “official” interface of many of the abstract types is underdocumented, eg I recently asked for a clarification about custom indexes, and [ended up opening an issue](https://discourse.julialang.org/t/custom-index-arithmetic/14374).

This may be the best solution for your problem, but at the same time you should consider the possibility that some of the abstract types are just there to help implementation (particularly, dispatch) and may not define an actual interface other than what the code shows.

---

_[View the full topic](https://discourse.julialang.org/t/how-to-create-non-abstract-subtypes-of-built-in-abstract-types-what-is-the-julias-substitute-for-interfaces/14741)._
