java-oo
manifold
java-oo | manifold | |
---|---|---|
1 | 90 | |
268 | 2,404 | |
- | 1.3% | |
0.0 | 9.1 | |
about 4 years ago | 11 days ago | |
Java | Java | |
- | Apache License 2.0 |
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.
java-oo
-
Tired of math.pow()
Code: https://github.com/amelentev/java-oo
manifold
-
Show HN: TypeSchema – A JSON specification to describe data models
> 1) Yet another protocol etc.
Agreed.
> 3) The biggest challenge about data models is not auto-generated code
I would say auto-generated code is most definitely the harder problem to solve, and I’d also go out on a limb and say it is THE problem to solve.
Whether it’s JSON, XML, JavaScript, SQL, or what have you, integrating both data and behavior between languages is paramount. But nothing has changed in the last 40+ years solving this problem, we still generate code the same clumsy way… Chinese wall between systems, separate build steps, and all the problems that go with it.
Something like project manifold[1] for the jvm world is in my view the way forward. Shrug.
1. https://github.com/manifold-systems/manifold
-
Kotlin Money
Generally, the idea is that there is no incompatibility between units. Money is a bit exotic given its abstract nature wrt units / exchange rates.
For instance, physical dimension store values as SI units, regardless of supplied unit, but retain the supplied unit type as a display hint.
Here, the Length dimension illustrates working with amounts of any unit.
Length orbit = 250 mi;
Length moon = 238000 km;
Length landing = moon + orbit;
display(landing); // prints 148,136.344 mi
display(landing.to(km)); // prints 238,402.336 km
// where
display(landing.to(mi) == landing.to(km)); // prints true
// perhaps a better example
Rate rate = 1.41 km/s;
Time duration = 76 hours;
Length distance = rate * duration;
// make your own unit constants
RateUnit kps = km/s;
rate = 1.41 kps;
You can play with the manifold-science[1] project, it implements the complete SI physical dimensions and many derived dimensions along with comprehensive operator overloading[2] support etc. to make working with and reading code using quantities more productive in Java.
1. https://github.com/manifold-systems/manifold/tree/master/man...
2. https://github.com/manifold-systems/manifold/tree/master/man...
- Show HN: Paranormal Metaprogramming with Java
-
Favor composition over inheritance for Java via True Delegation
The advantages of composition (or "true" delegation) over inheritance are well documented, but many languages remain poorly suited for it, particularly Java.
In the influential book "Effective Java" the author advocates favoring composition over inheritance, yet Java provides little support for it. One is left having to write or generate large portions of boilerplate code to achieve the most basic form of interface composition. More pragmatic support for the feature requires language/VM intervention, such as with true delegation and mix-in traits. This isn't to say the author's claims about inheritance and composition aren't well intentioned, however in practice it is difficult to make use of this advice when the language he champions, nearly a quarter century later, still does little to facilitate his position. The library mentioned here works toward a remedy[1].
1. https://github.com/manifold-systems/manifold/blob/master/man...
-
A Java Language Cumulative Feature Rollup
The manifold[1] compiler plugin for java offers a lot of features other languages like Kotlin provide, and innovates in some uniquely awesome ways like type-safe SQL.
1. https://github.com/manifold-systems/manifold
- Show HN: Native SQL, type-safe, in-lined. Pick three
- Show HN: GitHub Traffic CLI Tool
- Show HN: Use DuckDB type-safely in Java
- Show HN: Rational numbers for Java, why not?
- Show HN: Ditch your ORM with type-safe native SQL
What are some alternatives?
QuickShell - QuickShell is an Eclipse plugin to use Java JShell inside the Eclipse IDE.
Lombok - Very spicy additions to the Java programming language.
gpslogger - :satellite: Lightweight GPS Logging Application For Android.
graphql-java - GraphQL Java implementation
Swagger Plugin for JetBrains - A plugin to help you easily edit Swagger and OpenAPI specification files inside IntelliJ IDEA
Kotlin-Compiler-Crash-Course - A repository of helpful sources to figure out what the Kotlin compiler really is
phpinspectionsea - A Static Code Analyzer for PHP (a PhpStorm/Idea Plugin)
create-rust-app - Set up a modern rust+react web app by running one command.
bnd - Bnd/Bndtools. Tooling to build OSGi bundles including Eclipse, Maven, and Gradle plugins.
factor - Factor programming language
pfr - std::tuple like methods for user defined types without any macro or boilerplate code
nanoserde - Serialisation library with zero dependencies