Kotlin: Cantidades masivas de ConsPStack, ¿cómo puedo evitar?

¿Cómo puedo evitar la cantidad masiva de ConsPStack que crea mi aplicación? ¿Cuándo se crean estos? Mi aplicación: https://github.com/Jire/Abendigo

enter image description here

ACTUALIZACIÓN (05/09/2016): el problema ha sido resuelto y estará disponible en Kotlin 1.0.5.

La implementación de la reflexión de Kotlin está utilizando pcollections para almacenar en caching KClass instancias de KClass para diferentes classs. Una gran cantidad de instancias de ConsPStack probablemente significa que está utilizando la reflexión en muchas classs diferentes . Como mencioné en otra respuesta, la implementación de la reflexión no está optimizada en absoluto, por lo que se esperan problemas como este en este momento.

Si este problema es realmente crítico para usted, le recomendaría que KClass creación de KClass utilizando la reflexión de Java siempre que sea posible. Además, como solución extrema, puede intentar borrar el contenido de la memory caching descrita en un momento determinado. Aquí está el código correspondiente en el proyecto de Kotlin . Como la memory caching ( var K_CLASS_CACHE ) es privada, necesitaría usar la reflexión de Java para tener acceso a ella.