Settings

Theme

Rife Is a Framework Experiment

rife2.com

50 points by hacktember 3 years ago · 38 comments

Reader

ivolimmen 3 years ago

There are a huge set of web frameworks in Java that have the same example as shown on this site; I have no idea how this differs from, say, https://ratpack.io or https://sparkjava.com. This really needs some key features on the site to sell it.

  • gavinray 3 years ago

    The major difference that I seem to be able to find digging through the docs/wiki is that in RIFE2, "continuations" are a first-class feature of the framework and the framework was built with these in mind.

    What this allows you to do is build flows around pausing and saving the state of execution, and resuming it with all variables captured at a later time, which opens up neat possibilities.

    With Loom on the JVM natively this in THEORY should be possible but there is a lot of complication here.

    There was a good post on this on /r/java with Ron Pressler from Oracle posting about why this is complicated 1 month ago:

      "Yet another delimited continuations implementation and why Project Loom is a bit disappointing"
    
    https://www.reddit.com/r/java/comments/10889p1/yet_another_d...
    • KRAKRISMOTT 3 years ago

      Do Java programmers dream of callback hell?

      Steele needs to step in here and demonstrate some leadership. He invented Scheme and is involved in Java's day to day engineering decisions, he should be more than familiar with the problems that arise when you let programmers write continuations instead of implementing it at the compiler level.

  • twic 3 years ago

    There's more detail in the readme on GitHub:

    https://github.com/gbevin/rife2

    Including:

    > RIFE2 has features that after 20 years still can't be found elsewhere: web continuations, bidirectional template engine, bean-centric metadata system, full-stack without dependencies, metadata-driven SQL builders, content management framework, full localization support, resource abstraction, persisted cron-like scheduler, continuations-based workflow engine.

    Doesn't appear to have websocket support, though.

  • gbevin 3 years ago

    Thanks for reminding me that I've been neglecting the main site. I added a few very visible cards of some of the key features and split out a more comprehensive list into bullet points as opposed to the previous long paragraph.

    It's great that you see the similarities with Spark, I think that's a great framework!

isodev 3 years ago

It’s always nice to see full-stack, batteries included frameworks. However, whenever I see Java, I can’t help but think about Oracle and it turns into a very unpleasant feeling.

  • ivolimmen 3 years ago

    As a professional developer that only works on Java I hated the fact that Oracle bought Sun. I was rooting for IBM or Google. If you use the Oracle JDK; yes you MIGHT need to pay money depending on what you use of it. There are around 10 (?) different providers of Java Software Developer Kits available all the others are free. I know no Java developer that actually uses the one from Oracle; and since I am a consultant that works on contract bases at different companies I have spoken quite a few of them.

    • pjmlp 3 years ago

      Android Java proves how much Google cares about Java after screwing up Sun.

      Given how much everyone around here likes to hate on IBM, while not even being aware of how OpenJ9 works, the alternative implementations for IBM mainframe and micro computers and so forth, it would hardly make a difference versus Oracle.

      Sun, Oracle and IBM were the main triumvirate pushing Java into the market.

      Every Java developer that uses OpenJDK or a distribution based on it, uses Oracle code.

      It is about 80% of Oracle employes that put in the effort since Java 6 to bring the ecosystem forward.

    • bzzzt 3 years ago

      The issue with Oracle JDK is you _have_ to pay even if you don't use it. If there's just one person in the company using Oracle JDK they bill you for the entire company headcount.

      Earlier licensing practices were not much better; my company did a 'hard purge' a few years ago and everything using Oracle JDK+RDBMS is now running on OpenJDK with a PostgreSQL backend.

      Don't know what rooting for Google and/or IBM would help. All companies that size do have their shady side and will sometimes do questionable things. They didn't get to be so big just by being nice...

    • pron 3 years ago

      > There are around 10 (?) different providers of Java Software Developer Kits available all the others are free. I know no Java developer that actually uses the one from Oracle

      They're all from Oracle, even the ones you download from an Amazon website. Those providers merely build and package OpenJDK (which is the name of Oracle's implementation of Java). What you mean is that they're not using the distribution provided to Oracle support subscribers.

    • re-thc 3 years ago

      This assumes things would have turned out better under a different company. Perhaps Google being Google would have cancelled the project altogether or made it Android only. IBM could have sold it off.

      Whilst Oracle does have its issues what is it doing wrong here? As per other comments you don't have to use Oracle's JDK and if you do you're buying support.

    • pritambarhate 3 years ago

      There are many other vendors who offer JDK. We have been using Amazon Corretto JDK in production pretty much since the launch. Didn't face any issues.

  • dgb23 3 years ago

    I don’t quite understand these comments.

    Oracle seems to be this big, complicated enterprise oriented corporation. But they’re also stewards of Java and had kept the language evolving with impressive stability and compatibility guarantees.

    There are definitely firms that I don’t want to rely on for ethical reasons. They accumulated long lists of malpractices and exploitation. One in particular is very popular around here.

    What am I missing here?

    • Chris2048 3 years ago

      Are you asking why Oracle is unethical?

      Also, is the "One in particular" MS, Goog, or FB? All get as much skepticism/criticism as praise.

      • dgb23 3 years ago

        I don't necessarily want to bash on a specific company unrelated to the discussion I don't like right now. I just wanted to assert that I personally care when companies do shitty things. And whether people can provide substantiations for the negativity that is spread in some of the comments here.

    • vips7L 3 years ago

      Oracle saved Java. Sun was letting it rot. I don’t care what anyone else says about Oracle, but the OpenJdk team has done amazing work.

  • bzzzt 3 years ago

    Sun did release their Java implementation under GPL in 2006. There are lots of OpenJDK builds from different companies so you don't have to touch anything 'Oracle' to use Java.

    • pjmlp 3 years ago

      Except the tiny detail that OpenJDK code is mostly written by Oracle anyway.

      So are you suggesting to be stuck using Java 6 version?

      • PedroBatista 3 years ago

        So a for loop written by those evil Oracle fingers is different than one written by some majestic employee of a virtuous company that saves the World on a weekly basis like a child’s cartoon?

        Java is a tool that started long before Oracle acquired Sun, it’s open source and actually more open than most languages due to their governance and other powerful players involved.

      • bzzzt 3 years ago

        The OpenJDK project releases all Java code under a GPL license. You can make use of Java 19 without having any kind of relation with Oracle.

  • sockaddr 3 years ago

    Yeah I’d never touch anything Oracle. Don’t reward horrible behavior. Best thing the industry can do is ignore them as much as possible and let them fade away.

    • winrid 3 years ago

      Just like there are different C compilers there are different JDK/JREs.

    • re-thc 3 years ago

      Do you use MySQL? It's hard to avoid Oracle at this point except by pretending to. They own so many different companies you're likely just not aware you're indirectly supporting them somewhere.

revskill 3 years ago

I thought "modern Java" means classless ?

Why do i need to put some code inside another superficial class here ?

  • bzzzt 3 years ago

    "Modern Java" is not formally defined, but most people seem to associate it with Java for Microservices (small runtimes instead of ancient Java EE), functional programming, streams, reactive programming and generally using newer (Java 8+) language constructs.

    There's a lot more to it than obsessing over a single line of boilerplate code...

  • winrid 3 years ago

    Everything in java is a class, not sure what you mean.

    Personally, it's nice from an operations perspective. Makes debugging performance problems a lot easier.

  • hibbelig 3 years ago

    Are you thinking of JavaScript? In Java you can’t even write hello world without a class.

  • mrkeen 3 years ago

    > I thought "modern Java" means classless ?

    Nope.

    > Why do i need to put some code inside another superficial class here ?

    Which class is the superficial class?

  • int_19h 3 years ago

    Only if by "modern Java" you mean Kotlin.

    C# has top-level functions and even top-level code these days, but it evolves a lot faster.

    • pjmlp 3 years ago

      When Kotlin ships with their own JVM replacement, we might think about calling it "modern" Java.

      • int_19h 3 years ago

        I did not mean suggest that it is one. But many people outside of the ecosystem seem to treat it this way after Google started promoting it, which would explain OP's confusion.

  • dgb23 3 years ago

    Are you thinking of records?

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection