Comments (1)
Unfortunately we weren't aware of Derive4J, this is the first time we've heard about it. It definitely looks like a really versatile library that covers a lot of things that we don't, in particular the optics and other more advanced FP concepts look very attractive. I'll definitely add Derive4J to the Alternatives section.
The reason we wanted something like dataenum was in order to make pure functions used with Mobius less verbose using pattern matching, and it's primarily the exhaustive pattern matching we are interested in. We had partial matching support in dataenum for a while during initial development, but we removed it in favour of simplicity.
In general, simplicity really was our goal with dataenum, both in terms of API and generated code. Our primary target is Android so there are some considerations like method-count and code size, but it looks like Derive4J is quite configurable in that aspect.
In our particular context, catering to programmers with a non-FP background is also a concern, so if I was to say anything against Derive4J I suppose it would be that it maybe has too many features. But I don't think that's a very strong argument, and it's quite likely we wouldn't have created dataenum if we had known about Derive4J.
It'd be really interesting to hearing your thoughts about dataenum, especially since you've been working on the same problem and know the domain!
from dataenum.
Related Issues (8)
- Duplicate field names in @DataEnum specification interfaces
- Remove synthetic accessor from generated code HOT 4
- Referenced DataEnums in Sets doesn't build properly.
- Using byte[] as a field results in spotbugs warnings
- is project alive? HOT 3
- add safeAsX(): Optional<X> method HOT 1
- dataenum:1.5.0 is not compiling HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dataenum.