ref-cast
Kategory
ref-cast | Kategory | |
---|---|---|
3 | 32 | |
174 | 5,968 | |
- | 0.4% | |
7.4 | 8.8 | |
27 days ago | 4 days ago | |
Rust | Kotlin | |
Apache License 2.0 | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ref-cast
-
create a &Struct for a &Value
Yes, that's possible if you use repr(transparent). And as always David Tolnay has a crate for that: https://github.com/dtolnay/ref-cast
-
When Rust hurts
Actually you can, as long as the newtype struct has #[repr(transparent)]. The ref-cast crate makes it easy to do this without having to (directly) use unsafe code!
-
Hey Rustaceans! Got a question? Ask here (5/2023)!
You can add #[repr(transparent)] and then call transmute(), or use https://github.com/dtolnay/ref-cast (which is exactly what it does anyway, providing a safe interface).
Kategory
- Arrow Project for Arrow on GitHub
-
Java 21 makes me like Java again
Yeah, it has nice funcional capabilities and libraries (like Arrow[0]).
[0]: https://arrow-kt.io
-
Is it prudent to use Scala for anything new?
Last but not least, Scala is currently the language with one of the best effect systems in my opinion (https://zio.dev/). Kotlin for example has copied the approach with https://arrow-kt.io/ which I think is great actually. But when comparing Scala and Kotlin here, Scala wins by a large margin, it is a completely different world. It's like building a highly concurrent system in Erlang vs C.
Of course, if you don't want to learn things like union types, traits/typeclasses and effects (similar to async/await but more powerful) you will be annoyed by Scala. But once you learned them, you can never go back.
- Alternatives to scala FP
- Result Class with Generic Type for both Success and Failure States
-
Struggling with software robustness with Kotlin
In my own code, I started to use explicit error handling. I'm currently experimenting with Result (from https://github.com/michaelbull/kotlin-result) and Raise (from https://arrow-kt.io/).
-
Hey Rustaceans! Got a question? Ask here (5/2023)!
Are there any more-or-less established functional crates in Rust (similar to Kotlin’s Arrow)?
-
What's the benefit of using Arrow with Kotlin?
I wonder how the community sees adding Arrow besides standard Kotlin language features. Is it something that's still considered useful or just redundant and causing more confusion?
-
ArrowKt/FP - Tracking paths to validation errors
You can define a function like context(EitherEffect) suspend fun MyType.bind(path: String)like the ones in https://github.com/arrow-kt/arrow/blob/b608a054a5318fe57d7055c35bb64a5effb053b6/arrow-libs/core/arrow-core/src/commonMain/kotlin/arrow/core/computations/either.kt
- What advance concept to learn in Kotlin
What are some alternatives?
rust-bindgen - Automatically generates Rust FFI bindings to C (and some C++) libraries.
cats-effect - The pure asynchronous runtime for Scala
kanin - A microservice framework for AMQP, protobuf and Rust.
RxKotlin - RxJava bindings for Kotlin
auto-future - A way to easily build structs that can be turned into futures
kotlin-monads - Monads for Kotlin
kotlin-result - A multiplatform Result monad for modelling success or failure operations.
Reduks - A "batteries included" port of Reduxjs for Kotlin+Android
redux-kotlin - Predictable state container for Kotlin apps
funKTionale - Functional constructs for Kotlin
Arrow Meta - Functional companion to Kotlin's Compiler
Javaslang - vʌvr (formerly called Javaslang) is a non-commercial, non-profit object-functional library that runs with Java 8+. It aims to reduce the lines of code and increase code quality.