# This type

**URL:** <https://discuss.kotlinlang.org/t/this-type/1421>\
**Category:** Language Design\
**Created:** [January 19, 2016, 5:29pm UTC](https://discuss.kotlinlang.org/t/this-type/1421 "2016-01-19T17:29:17Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![nbilyk](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.kotlinlang.org/nbilyk/32/1483_2.png) [@nbilyk](https://discuss.kotlinlang.org/u/nbilyk)\
**Post date:** [January 19, 2016, 11:03pm UTC](https://discuss.kotlinlang.org/t/this-type/1421/4 "2016-01-19T23:03:10Z")

</div>

Extension methods aren’t polymorphic, and as you said, also requires you to expose state properties.

That’s interesting about abstract types in Scala. Certainly there are more powerful solutions than the one I suggested.

---

_[View the full topic](https://discuss.kotlinlang.org/t/this-type/1421)._
