Need advice about which tool to choose?Ask the StackShare community!

Common Lisp

256
250
+ 1
145
JRuby

86
89
+ 1
32
Markdown

21.2K
15.8K
+ 1
960

Common Lisp vs JRuby vs Markdown: What are the differences?

Introduction

When comparing Common Lisp and JRuby, it’s important to highlight their key differences to understand their unique characteristics in terms of programming languages.

  1. Language Type: Common Lisp is a dialect of the Lisp programming language, known for its strong support for object-oriented and functional programming paradigms, while JRuby is an implementation of the Ruby programming language on the Java Virtual Machine (JVM). Common Lisp is known for its powerful macro system, dynamic typing, and extensive standard library, whereas JRuby leverages the Java ecosystem, providing access to Java libraries and tools.

  2. Concurrency and Parallelism: Common Lisp has limited support for concurrency and parallelism out of the box, but it can be augmented with libraries like Bordeaux-Threads or CFFI for interacting with C libraries. On the other hand, JRuby benefits from the rich concurrency features of the JVM, such as the java.util.concurrent package, making it easier to implement multithreaded and parallel applications.

  3. Syntax and Semantics: Common Lisp has a distinctive prefix notation syntax, using S-expressions, which can be off-putting to newcomers but is highly expressive and flexible once mastered. In contrast, JRuby follows the more conventional object-oriented syntax of Ruby, which is known for its readability and ease of use.

  4. Community and Ecosystem: Common Lisp has a smaller but dedicated community, with a focus on language design and research, leading to a rich ecosystem of libraries and tools like Quicklisp for package management. JRuby, being part of the broader Ruby community, benefits from a large number of gems and active open-source projects.

  5. Performance: Common Lisp implementations like SBCL and CCL are known for their high performance and efficient memory management, making them suitable for demanding computational tasks. JRuby, being a dynamic language running on top of the JVM, may have slightly lower performance compared to statically-typed languages, but it offers the advantage of seamless integration with existing Java codebases.

In Summary, the key differences between Common Lisp and JRuby lie in their language types, support for concurrency, syntax and semantics, community ecosystems, and performance characteristics.

Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Common Lisp
Pros of JRuby
Pros of Markdown
  • 24
    Flexibility
  • 22
    High-performance
  • 17
    Comfortable: garbage collection, closures, macros, REPL
  • 13
    Stable
  • 12
    Lisp
  • 8
    Code is data
  • 6
    Can integrate with C (via CFFI)
  • 6
    Multi paradigm
  • 5
    Lisp is fun
  • 4
    Macros
  • 4
    Easy Setup
  • 3
    Parentheses
  • 3
    Open source
  • 3
    Purelly functional
  • 3
    Elegant
  • 1
    DSLs
  • 1
    Multiple values
  • 1
    CLOS/MOP
  • 1
    Clean semantics
  • 1
    Will still be relevant 100 years from now
  • 1
    Still decades ahead of almost all programming languages
  • 1
    Best programming language
  • 1
    Simple syntax
  • 1
    Powerful
  • 1
    Generic functions
  • 1
    Can implement almost any feature as a library
  • 1
    Formal specification, multiple implementations
  • 8
    Java
  • 7
    Faster than Ruby
  • 3
    Threads
  • 3
    JVM
  • 2
    Open source
  • 2
    Supports native Ruby gems out the box
  • 2
    Garbage collection built-in
  • 2
    Built-in Testing
  • 2
    Deploy as executable jay
  • 1
    Great community
  • 345
    Easy formatting
  • 246
    Widely adopted
  • 194
    Intuitive
  • 132
    Github integration
  • 41
    Great for note taking
  • 2
    Defacto GitHub lingo

Sign up to add or upvote prosMake informed product decisions

Cons of Common Lisp
Cons of JRuby
Cons of Markdown
  • 4
    Too many Parentheses
  • 3
    Standard did not evolve since 1994
  • 2
    Small library ecosystem
  • 2
    No hygienic macros
  • 1
    Inadequate community infrastructure
  • 1
    Ultra-conservative community
    Be the first to leave a con
    • 2
      Cannot centralise (HTML code needed)
    • 1
      Inconsistend flavours eg github, reddit, mmd etc
    • 1
      Limited syntax
    • 1
      Not suitable for longer documents
    • 1
      Non-extensible
    • 1
      No right indentation
    • 1
      No underline
    • 1
      Unable to indent tables

    Sign up to add or upvote consMake informed product decisions

    - No public GitHub repository available -
    - No public GitHub repository available -

    What is Common Lisp?

    Lisp was originally created as a practical mathematical notation for computer programs, influenced by the notation of Alonzo Church's lambda calculus. It quickly became the favored programming language for artificial intelligence (AI) research. As one of the earliest programming languages, Lisp pioneered many ideas in computer science, including tree data structures, automatic storage management, dynamic typing, conditionals, higher-order functions, recursion, and the self-hosting compiler. [source: wikipedia]

    What is JRuby?

    JRuby is the effort to recreate the Ruby (http://www.ruby-lang.org) interpreter in Java. The Java version is tightly integrated with Java to allow both to script any Java class and to embed the interpreter into any Java application. See the docs directory for more information.

    What is Markdown?

    Markdown is two things: (1) a plain text formatting syntax; and (2) a software tool, written in Perl, that converts the plain text formatting to HTML.

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use Common Lisp?
    What companies use JRuby?
    What companies use Markdown?

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with Common Lisp?
    What tools integrate with JRuby?
    What tools integrate with Markdown?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    What are some alternatives to Common Lisp, JRuby, and Markdown?
    Clojure
    Clojure is designed to be a general-purpose language, combining the approachability and interactive development of a scripting language with an efficient and robust infrastructure for multithreaded programming. Clojure is a compiled language - it compiles directly to JVM bytecode, yet remains completely dynamic. Clojure is a dialect of Lisp, and shares with Lisp the code-as-data philosophy and a powerful macro system.
    Haskell
    It is a general purpose language that can be used in any domain and use case, it is ideally suited for proprietary business logic and data analysis, fast prototyping and enhancing existing software environments with correct code, performance and scalability.
    Python
    Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best.
    Racket
    It is a general-purpose, multi-paradigm programming language based on the Scheme dialect of Lisp. It is designed to be a platform for programming language design and implementation. It is also used for scripting, computer science education, and research.
    Java
    Java is a programming language and computing platform first released by Sun Microsystems in 1995. There are lots of applications and websites that will not work unless you have Java installed, and more are created every day. Java is fast, secure, and reliable. From laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere!
    See all alternatives