New #typelevel #scala library for building effects incrementally: https://github.com/typelevel/twiddles
GitHub - typelevel/twiddles: Micro-library for building effectful protocols

Micro-library for building effectful protocols. Contribute to typelevel/twiddles development by creating an account on GitHub.

GitHub
@mpilquist Nice! Curious if Skunk will be updated to use this lib?
@JZee Yeah that’s next on my list :)

@mpilquist @JZee would using twiddles enable gmapping to products with more than 16 elements?

Just curious because I ran into the product16 gmap limit in Skunk after joining a few tables together the other day.

@mpilquist @JZee I was too curious so I tried and it looks like the answer is yes. 😄
@soeren @JZee Yep! Internally, Scala 3 converts tuples over a certain length to a TupleXXL which wraps an array. I was initially concerned about performance of cons given the underlying array copy but performance seems fine in practice.