Frege is a purely functional programming language that compiles to JVM bytecode, providing Haskell-like semantics for the Java platform. It is built around a Haskell-inspired compiler that implements non-strict evaluation and a static type inference system to ensure data immutability and prevent side effects. The project distinguishes itself through a sophisticated type system featuring rank polymorphism, type-class based dispatch, and static purity enforcement. It includes a JVM language bridge and a foreign function interface that map Java classes and interfaces into functional types, allow
Groovy is a JVM programming language and metaprogramming framework that provides a Java compatible environment for building applications. It functions as a dynamic scripting language and a tool for authoring domain-specific languages, allowing for the execution of custom scripts and the creation of specialized mini-languages with concise syntax. The project is distinguished by its ability to modify program behavior and class definitions through both compile-time and runtime metaprogramming. It utilizes a hybrid typing model that combines dynamic method resolution with optional static type che
This project is a Scala programming course and educational resource. It provides a set of lessons covering the core fundamentals of the language, ranging from basic syntax to advanced type systems. The material includes a functional programming tutorial focused on higher-order functions and pattern matching, as well as guides on managing asynchronous execution and concurrency. It also serves as a resource for understanding the Java Virtual Machine and language interoperability. The course covers the application of polymorphism and variance for type-safe data structures and the use of specifi
Clojure is a general-purpose, functional programming language hosted on the Java Virtual Machine. It is a homoiconic S-expression language that represents programs as nested data structures, allowing code to be manipulated and evaluated as data. The project provides a framework for JVM interoperability, enabling the invocation of Java methods and integration with other JVM-based languages. It distinguishes itself through a persistent data structure library that uses bitmapped vector tries to manage immutable collections and a programmatic REPL for interactive software development and real-tim
JRuby est une implémentation du langage Ruby qui s'exécute sur la Java Virtual Machine (JVM). Il sert de runtime multi-langage et d'environnement d'exécution, permettant au code Ruby de s'exécuter sur la JVM et de partager la mémoire avec des applications Java.
The main features of jruby/jruby are: JVM-Based Runtime Executions, Cross-Language Library Integration, Java Library Integrations, Ruby Interpreters, Java Interoperability, Java Virtual Machine Bridges, Language Embedding, Ruby Implementations.
Open-source alternatives to jruby/jruby include: frege/frege — Frege is a purely functional programming language that compiles to JVM bytecode, providing Haskell-like semantics for… apache/groovy — Groovy is a JVM programming language and metaprogramming framework that provides a Java compatible environment for… twitter/scala_school — This project is a Scala programming course and educational resource. It provides a set of lessons covering the core… clojure/clojure — Clojure is a general-purpose, functional programming language hosted on the Java Virtual Machine. It is a homoiconic… google/j2objc — j2objc is a source-to-source compiler and transpiler that converts Java source code into Objective-C. It functions as… opal/opal — Opal is a Ruby frontend framework and compiler that translates Ruby source code into JavaScript. It functions as a web…