Any language with a 'self' type?

This page summarizes the projects mentioned and recommended in the original post on

Our great sponsors
  • Sonar - Write Clean Java Code. Always.
  • InfluxDB - Access the most powerful time series database as a service
  • SaaSHub - Software Alternatives and Reviews
  • xvm

    Ecstasy and XVM

    Early on, we had the This keyword, and its meaning was "this type". So if a method on class Collection was declared as This add(Element), it meant that the method returned the auto-narrowing type of this. We later changed it from This to Collection (or whatever the class name is) and added the Collection! (non-narrowing) form, because there were syntactic needs (e.g. inner and outer auto-narrowing class references) that could not be covered by This. We evaluated a few different options, and we liked (and still like) the result that we came up with. That said, I still wish we had a This keyword (see the 5th bullet point) for the "this type", but 🤷‍♂️.

  • Sonar

    Write Clean Java Code. Always.. Sonar helps you commit clean code every time. With over 600 unique rules to find Java bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts