Java in the Small

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

CodeRabbit: AI Code Reviews for Developers
Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
coderabbit.ai
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  1. dotnet-script

    Run C# scripts from the .NET CLI.

    It should be able to! F# has "gradual typing" and full type inference which means you often do not need to specify the types at all, and it also happens to be whitespace-sensitive language much like Python is. Both of these aspects should make it feel quite familiar while also giving you full advantages of static typing.

    One thing to note is I find `dotnet fsi {some script name}.fsx` taking more time to start than ideal - up to 800ms is just too much, normal .NET applications usually start in a fraction of this.

    I recently posted a submission for "FSharpPacker" that lets you compile F# scripts to standalone applications (either runtime-dependent, self-contained or fully native binaries, much like Go), it also has some comments on getting the best mileage out of it: https://news.ycombinator.com/item?id=42304835

    Probably the best feature that also comes with scripting (both C# and F#) is "inline" nuget references e.g. #r "nuget: FSharp.Control.TaskSeq" which will automatically pull the dependency from nuget without ever dealing with manually installing it or tinkering with build system in any other way.

    Some additional links:

    https://learn.microsoft.com/en-us/dotnet/fsharp/tools/fsharp...

    https://github.com/dotnet-script/dotnet-script (C# is also a quite productive language for scripting and small programs because of top-level statements, record types, pattern matching and many other functional features though perhaps not as strongly represented as in F#)

    https://github.com/waf/CSharpRepl

  2. CodeRabbit

    CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.

    CodeRabbit logo
  3. CSharpRepl

    A command line C# REPL with syntax highlighting – explore the language, libraries and nuget packages interactively.

    It should be able to! F# has "gradual typing" and full type inference which means you often do not need to specify the types at all, and it also happens to be whitespace-sensitive language much like Python is. Both of these aspects should make it feel quite familiar while also giving you full advantages of static typing.

    One thing to note is I find `dotnet fsi {some script name}.fsx` taking more time to start than ideal - up to 800ms is just too much, normal .NET applications usually start in a fraction of this.

    I recently posted a submission for "FSharpPacker" that lets you compile F# scripts to standalone applications (either runtime-dependent, self-contained or fully native binaries, much like Go), it also has some comments on getting the best mileage out of it: https://news.ycombinator.com/item?id=42304835

    Probably the best feature that also comes with scripting (both C# and F#) is "inline" nuget references e.g. #r "nuget: FSharp.Control.TaskSeq" which will automatically pull the dependency from nuget without ever dealing with manually installing it or tinkering with build system in any other way.

    Some additional links:

    https://learn.microsoft.com/en-us/dotnet/fsharp/tools/fsharp...

    https://github.com/dotnet-script/dotnet-script (C# is also a quite productive language for scripting and small programs because of top-level statements, record types, pattern matching and many other functional features though perhaps not as strongly represented as in F#)

    https://github.com/waf/CSharpRepl

  4. ryujinx

    Discontinued Hard-fork of the Ryujinx project [UnavailableForLegalReasons - Repository access blocked] (by ryujinx-mirror)

    And in many other situations "./gradlew run" just doesn't work. Hell, Gradle does not even let you quickly scaffold it without pre-existing knowledge and community advice! (if you want to avoid pitfalls and have the best "streamlined" experience) Something that is not an issue in Rust or Go. Maven is even worse.

    Meanwhile I can 'git clone https://github.com/ryujinx-mirror/ryujinx && cd ryujinx/src/Ryujinx && dotnet run -c Release' and it works on the first attempt (though takes a moment to pull nuget packages, it's a big project).

  5. Spring Boot

    Spring Boot helps you to create Spring-powered, production-grade applications and services with absolute minimum fuss.

    Boot has an "app" (err, lib) for everything. It's fully featured, and highly opinionated.

    Pretty much any modern computing problem you have, Boot has you covered[1].

    So while you may not have ever used a Streaming library before, if you know Boot, then the Spring Boot Streaming library will already be familiar.

    [1] https://spring.io/projects/spring-boot

  6. scala-cli

    Scala CLI is a command-line tool to interact with the Scala language. It lets you compile, run, test, and package your Scala code (and more!)

  7. coursier

    Pure Scala Artifact Fetching

    https://get-coursier.io/

    Its a cli based artifact fetching tool for the JVM ecosystem, and you can have it just make up classpath strings for you, i.e., to use some Apache dependencies with the single file simplified java running you could just:

    java --enable-preview --class-path (cs fetch --classpath org.apache.commons:commons-collections4:4.4) program.java

    Also, maybe do have a look at scala-cli:

  8. Puts Debuggerer

    Ruby library for improved puts debugging, automatically displaying bonus useful information such as source line number and source code.

    I don't share your experience. I have no problems importing a Maven project

       git clone https://github.com/...

  9. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  10. JetBrainsRuntime

    Runtime environment based on OpenJDK for running IntelliJ Platform-based products on Windows, macOS, and Linux

  11. jtaccuino

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • spectre.console VS Gui.cs - a user suggested alternative

    2 projects | 25 Dec 2024
  • How to Create Command Line Console Applications in .NET

    1 project | dev.to | 29 Nov 2024
  • Data Engineering with Scala: Mastering Real-Time Data Processing with Apache Flink and Google Pub/Sub

    3 projects | dev.to | 17 Oct 2024
  • Show HN: Dug, A CLI global DNS propagation checker, now on homebrew

    1 project | news.ycombinator.com | 8 Oct 2024
  • Go 1.23 Released

    1 project | news.ycombinator.com | 13 Aug 2024