Ruby Version Manager
   HOME





Ruby Version Manager
Ruby Version Manager, often abbreviated as RVM, is a software platform for Unix-like operating systems designed to manage multiple installations of Ruby on the same device. The entire Ruby environment including the Ruby interpreter, installed RubyGems (gems), and documentation is partitioned. A developer can then switch between the different versions to work on several projects with different version requirements. In addition to MRI, the standard Ruby interpreter, RVM functions as an installer for various other implementations of Ruby. These include JRuby, mruby, MacRuby, IronRuby, Maglev, Rubinius, Ruby Enterprise Edition, Topaz, and GoRuby (an interpreter optimized for code golf Code golf is a type of recreational computer programming competition in which participants strive to achieve the shortest possible source code that solves a certain problem. Code golf challenges and tournaments may also be named with the programmi ...). In addition, RVM supports the installation o ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Bash (Unix Shell)
In computing, Bash (short for "''Bourne Again SHell''") is an interactive command interpreter and command programming language developed for UNIX-like operating systems. Created in 1989 by Brian Fox for the GNU Project, it is supported by the Free Software Foundation and designed as a 100% free alternative for the Bourne shell (sh) and other proprietary Unix shells. Since its inception, Bash has gained widespread adoption and is commonly used as the default login shell for numerous Linux distributions. It holds historical significance as one of the earliest programs ported to Linux by Linus Torvalds, alongside the GNU Compiler ( GCC). It is available on nearly all modern operating systems, making it a versatile tool in various computing environments. As a command-line interface (CLI), Bash operates within a terminal emulator, or text window, where users input commands to execute various tasks. It also supports the execution of commands from files, known as shell scripts, f ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Ruby (programming Language)
Ruby is a general-purpose programming language. It was designed with an emphasis on programming productivity and simplicity. In Ruby, everything is an object (computer science), object, including primitive data types. It was developed in the mid-1990s by Yukihiro Matsumoto, Yukihiro "Matz" Matsumoto in Japan. Ruby is interpreted language, interpreted, high-level programming language, high-level, and Dynamic typing, dynamically typed; its interpreter uses garbage collection (computer science), garbage collection and just-in-time compilation. It supports multiple programming paradigms, including procedural programming, procedural, object-oriented programming, object-oriented, and functional programming. According to the creator, Ruby was influenced by Perl, Smalltalk, Eiffel (programming language), Eiffel, Ada (programming language), Ada, BASIC, and Lisp (programming language), Lisp. History Early concept According to Matsumoto, Ruby was conceived in 1993. In a 1999 post to t ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Unix-like
A Unix-like (sometimes referred to as UN*X, *nix or *NIX) operating system is one that behaves in a manner similar to a Unix system, although not necessarily conforming to or being certified to any version of the Single UNIX Specification. A Unix-like Application software, application is one that behaves like the corresponding List of POSIX commands, Unix command or Unix shell, shell. Although there are general Unix philosophy, philosophies for Unix design, there is no technical standard defining the term, and opinions can differ about the degree to which a particular operating system or application is Unix-like. Some well-known examples of Unix-like operating systems include Linux, FreeBSD and OpenBSD. These systems are often used on servers as well as on personal computers and other devices. Many popular applications, such as the Apache HTTP Server, Apache web server and the Bash (Unix shell), Bash shell, are also designed to be used on Unix-like systems. Definition The Open ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Apache License
The Apache License is a permissive free software license written by the Apache Software Foundation (ASF). It allows users to use the software for any purpose, to distribute it, to modify it, and to distribute modified versions of the software under the terms of the license, without concern for royalties. The ASF and its projects release their software products under the Apache License. The license is also used by many non-ASF projects. History Beginning in 1995, the Apache Group (later the Apache Software Foundation) released successive versions of the Apache HTTP Server. Its initial license was essentially the same as the original 4-clause BSD license, with only the names of the organizations changed, and with an additional clause forbidding derivative works from bearing the Apache name. In July 1999, the Berkeley Software Distribution accepted the argument put to it by the Free Software Foundation and retired their ''advertising clause'' (clause 3) to form the new 3-clau ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


RubyGems
RubyGems is a package manager for the Ruby programming language that provides a standard format for distributing Ruby programs and libraries (in a self-contained format called a "gem"), a tool designed to easily manage the installation of gems, and a server for distributing them. It was created by Chad Fowler, Jim Weirich, David Alan Black, Paul Brannan and Richard Kilmer in 2004. The interface for RubyGems is a command-line tool called ''gem'' which can install and manage libraries (the gems). RubyGems integrates with Ruby run-time loader to help find and load installed gems from standardized library folders. Though it is possible to use a private RubyGems repository, the public repository is most commonly used for gem management. The public repository helps users find gems, resolve dependencies and install them. RubyGems is bundled with the standard Ruby package as of Ruby 1.9. History Development on RubyGems started in November 2003 and was released to the public ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Ruby MRI
Matz's Ruby Interpreter or Ruby MRI (also called CRuby) is an implementation of the Ruby programming language named after Ruby creator Yukihiro Matsumoto ("Matz"). Until the specification of the Ruby language in 2012, the MRI implementation was considered the ''de facto'' reference, especially since an independent attempt to create the specification (RubySpec) had failed. Starting with Ruby 1.9, and continuing with Ruby 2.x and above, the official Ruby interpreter has been YARV ("Yet Another Ruby VM"). Ruby 1.8 is the last version that uses MRI. History Yukihiro Matsumoto ("Matz") started working on Ruby on February 24, 1993, and released it to the public in 1995. "Ruby" was named as a gemstone because of a joke within Matsumoto's circle of friends alluding to the name of the Perl programming language. The 1.8 branch has been maintained until June 2013, and 1.8.7 releases have been released since April 2008. This version provides bug fixes, but also many Ruby feature enhan ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




JRuby
JRuby is an implementation of the Ruby programming language atop the Java Virtual Machine, written largely in Java. It is free software released under a three-way EPL/ GPL/LGPL license. JRuby is tightly integrated with Java to allow the embedding of the interpreter into any Java application with full two-way access between the Java and the Ruby code (similar to Jython for the Python language). JRuby's lead developers are Charles Oliver Nutter and Thomas Enebo, with many current and past contributors including Ola Bini and Nick Sieger. In September 2006, Sun Microsystems hired Enebo and Nutter to work on JRuby full-time. In June 2007, ThoughtWorks hired Ola Bini to work on Ruby and JRuby. In July 2009, the JRuby developers left Sun to continue JRuby development at Engine Yard. In May 2012, Nutter and Enebo left Engine Yard to work on JRuby at Red Hat. History JRuby was originally created by Jan Arne Petersen, in 2001. At that time and for several years following, the code ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Mruby
mruby is an interpreter for the Ruby programming language with the intention of being lightweight and easily embeddable. The project is headed by Yukihiro Matsumoto, with over 100 contributors currently working on the project. Features mruby 1.0 supports the Ruby 2.1 core API, but none of the standard library. As well as being able to execute most basic Ruby code, mruby also features a bytecode compiler and virtual machine, as well as the ability to be easily embedded and integrated into C or C++ code, in a similar manner to Lua or Tcl. mruby 2.0.0 adds support for several Ruby 2.x methods beyond Ruby 2.1. v2.0.0 also changed to variable length bytecode instructions format. mruby bytecode can be embedded in C code, and thus, can be compiled into a standalone executable. mruby also aims to be compliant with the ISO/IEC 30170:2012 standard. Examples Calling mruby from C #include #include #include int main(void) Assuming that the mruby library and headers are instal ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


MacRuby
MacRuby is a discontinued implementation of the Ruby language that ran on the Objective-C runtime and CoreFoundation framework under development by Apple Inc. which "was supposed to replace RubyCocoa". It targeted Ruby 1.9 and used the high performance LLVM compiler infrastructure starting with version 0.5. It supports both ahead-of-time and just-in-time compilation. MacRuby supported Interface Builder and shipped with a core library called HotCocoa to simplify Cocoa programming. MacRuby was also used as an embedded scripting language for Objective-C applications. In May 2012, Laurent Sansonetti announced RubyMotion, a port of MacRuby for iOS, OS X and Android.RubyMotion - About
RubyMotion.com. Retrieved July 20, 2012.
Development on MacRuby effectively ended in late 2011, coinciding with the principal author's departure f ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


IronRuby
IronRuby is an implementation of the Ruby programming language targeting Microsoft .NET Framework. It is implemented on top of the Dynamic Language Runtime (DLR), a library running on top of the Common Language Infrastructure that provides dynamic typing and dynamic method dispatch, among other things, for dynamic languages. The project is currently inactive, with the last release of IronRuby (version 1.1.3) being in March 2011. History On April 30, 2007, at MIX 2007, Microsoft announced IronRuby, which uses the same name as Wilco Bauwer's IronRuby project with permission. It was planned to be released to the public at OSCON 2007. On July 23, 2007, as promised, John Lam and the DLR Design Team presented the pre-Alpha version of the IronRuby compiler at OSCON. He also announced a quick timeline for further integration of IronRuby into the open source community. On August 31, 2007, John Lam and the DLR Design Team released the code in its pre-alpha stage on RubyForge. The so ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




MagLev (software)
MagLev is an alternative implementation of the Ruby programming language built on the GemStone/S virtual machine from GemTalk Systems. Much of Maglev was set out to be written in Ruby as much as possible, resulting in some collaboration with the Rubinius project. As of the first beta release, the project runs RubyGems 1.3.5 natively, with support for C and Smalltalk extensions. MagLev has a distinct VM architecture that allows it to share code and data between runtimes and execution cycles through a Ruby API. Architecture Maglev runs inside an image like Smalltalk, offering transparent object persistence to Ruby objects and classes. Object persistence is based on ACID transactions that allow multiple running instances to see a shared object graph. Maglev uses a process-based concurrency model, mapping Ruby threads to Smalltalk Processes, which are scheduled in the VM as green threads. Using MagLev should yield performance increases when using Ruby, along with allowing Rub ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Rubinius
Rubinius is an alternative Ruby implementation created by Evan Phoenix. Based loosely on the Smalltalk-80 ''Blue Book'' design, Rubinius seeks to "provide a rich, high-performance environment for running Ruby code." Goals Rubinius follows in the Lisp and Smalltalk traditions, by natively implementing as much of Ruby as possible in Ruby code. It also has a goal of being thread-safe in order to be able to embed more than one interpreter in a single application. Sponsorship From 2007 to 2013, Engine Yard funded one full-time engineer to work exclusively on Rubinius. Evan Phoenix now works at HashiCorp. PowerPC64 support Since version 2.4.0, support on PowerPC64 is enabled. See also * Jikes RVM * JRuby * MacRuby *MagLev * Parrot virtual machine * PyPy * Squawk * Squeak Squeak is an object-oriented, class-based, and reflective programming language. It was derived from Smalltalk-80 by a group that included some of Smalltalk-80's original developers, initially a ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]