Ken Scambler

Results 41 issues of Ken Scambler

When a literal is interpolated in an index position, the type is overspecialised to the exact literal instance type (`Int(1)`, `String("abc")`, `Char('a')` etc), rather than the expected type (`Int`, `String`....

bug

Using the `.name` syntax, `get` and `set` modes generate the most general possible optics, `Getter`s and `Setter`s respectively. This means that more code can participate, such as no-arg methods with...

enhancement

Case classes naturally support polymorphic update: ``` case class Foo[A](foo: A) val f: Foo[Int] = Foo(3) >> f: Foo[Int] f.copy(_.toString) >> res2: Foo[String] ``` This should work in Goggles too,...

enhancement

Currently if -Yrangepos is not set, then interpolated args cannot be displayed in the leftmost column of the error table, and the position of the ^ indicator cannot be accurately...

Strings seem a common enough index type that a literal syntax could be useful, ie for JSON or XML documents. Single quotes will be the most convenient. I don't think...

enhancement

Monocle is adding support: https://github.com/julien-truffaut/Monocle/commit/5d1e285c7d9774d98ad9cb07bd40ce91d0e24fbf We should too.

enhancement

A common Monocle idiom, currently unsupported by Goggles, is composing lens set/modify expressions before the object is applied. This returns an endofunction, with pleasing compositional properties. For instance: `val x:...

question

In the same way that the `.name` syntax automatically navigates case-class-like fields with Lenses, it should be able to navigate ADTs in `sealed` class hierarchies with Prisms. This should be...

enhancement

If we have multiple changes to make to a structure, how can we perform them all without it looking terrible? ``` val game1 = set"$game.currentLevel.player.health" := 100 val game2 =...

enhancement
question

@julien-truffaut mentioned that: > Lenses still cause a performance overhead around 2x comparing to hand written copy (as measured with jmh) Since Goggles is generating code anyway, could we gain...

enhancement
question