Hi! The PR looks interesting. But firstly, I have organizational issues:
- Could you describe what you are doing? I recall what annealing is. But a brief description like "I implemented some…
ShapeND
a non-value class
ShapeND
a usual non-value class. Implement its equals
and hashCode
methods. Deprecate contentEquals
and contentHashCode
.
@altavir There is a need for a function Buffer<T>.sum(elementAlgebra: Group<T>)
. Where should we place it?
Yeah, it is better if the function is marked tailrec
. But I am not sure if compiler understands the case. So I need a bit of time for a small test.
Yeah, that's the idiomatic way. But place it outside the function. Or else you won't able to access it :)
By the way, in general you'll have to use T
as L
. Otherwise, either interpolate
can not be resolved in snippet
I don't understand what the Success
inheritors are for. I mean, they are all instantiated but never distinguished. All of them can be used only internally, but are cast to Success
anyway.
You should use SeriesAlgebra
's elementAlgebra
in getting difference of two Double
values instead of l - r
. And in 8 strings below too.
Do not use Pair
! It's non-idiomatic in Kotlin. It is really hard to always keep in mind what first
and second
fields hold. Instead, define and use custom data class with understandable name and understandable parameters' names.
Could you comment what question // weird offset, is there a way to do it better?
means in more detail?