arrow-kt / arrow-core

Λrrow Core is part of Λrrow, a functional companion to Kotlin's Standard Library
http://arrow-kt.io
Other
81 stars 30 forks source link

Deprecate Show #321

Closed nomisRev closed 3 years ago

nomisRev commented 3 years ago

This PR deprecates Show since Kotlin, and Kotlin's Std doesn't take Show into account nor does Kotlin have the power to automatically derive or inject Show anywhere. This makes Show very cumbersome to work with, see Tuple10Show.kt.

The use-cases of Show seemed very limited and niche to us, so we've decided to exclude it from Arrow in 1.0.0. The common technique for this is to use data class, which automatically implements toString() and correctly implementing toString().

franciscodr commented 3 years ago

I think we need to remove the instance of Show for Validated and its implementation: