Clojure vs JavaScript vs PHP

Clojure
Clojure

550
353
887
JavaScript
JavaScript

41.8K
13K
7.3K
PHP
PHP

25.4K
5.2K
4.3K
- No public GitHub repository available -

What is 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.

What is JavaScript?

JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.

What is PHP?

Fast, flexible and pragmatic, PHP powers everything from your blog to the most popular websites in the world.

Want advice about which of these to choose?Ask the StackShare community!

Why do developers choose Clojure?
Why do developers choose JavaScript?
Why do developers choose PHP?
What are the cons of using Clojure?
What are the cons of using JavaScript?
What are the cons of using PHP?
What companies use Clojure?
What companies use JavaScript?
What companies use PHP?
What are some alternatives to Clojure, JavaScript, and PHP?
Scala
Scala is an acronym for “Scalable Language”. This means that Scala grows with you. You can play with it by typing one-line expressions and observing the results. But you can also rely on it for large mission critical systems, as many companies, including Twitter, LinkedIn, or Intel do. To some, Scala feels like a scripting language. Its syntax is concise and low ceremony; its types get out of the way because the compiler can infer them.
Haskell
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]
Elixir
Elixir leverages the Erlang VM, known for running low-latency, distributed and fault-tolerant systems, while also being successfully used in web development and the embedded software domain.
Julia
Julia is a high-level, high-performance dynamic programming language for technical computing, with syntax that is familiar to users of other technical computing environments. It provides a sophisticated compiler, distributed parallel execution, numerical accuracy, and an extensive mathematical function library.
See all alternatives
What tools integrate with Clojure?
What tools integrate with JavaScript?
What tools integrate with PHP?
    No integrations found
    Decisions about Clojure, JavaScript, and PHP
    No stack decisions found
    Interest over time
    Reviews of Clojure, JavaScript, and PHP
    Review ofPHPPHP

    source: w3techs.com

    Rants about PHP are everywhere, but during the last years the language and the whole ecosystem has evolved.

    The lastest versions support namespaces, closures, traits, generators and with composer a dependency manager that changed the way PHP developers work and collaborate.

    Review ofJavaScriptJavaScript

    excellent!!

    How developers use Clojure, JavaScript, and PHP
    Avatar of Andrew Faulkner
    Andrew Faulkner uses JavaScriptJavaScript

    Almost the entire app was written in Javascript, with JSON-based configuration and data storage. The following components were written and/or configured with Javascript:

    • Most server-side scripts, all unit tests, all build tools, etc. were driven by NodeJS.
    • ExpressJS served as the 'backend' server framework.
    • MongoDB (which stores essential JSON) was the main database.
    • MongooseJS was used as the main ORM for communicating with the database, with KnexJS used for certain edge cases.
    • MochaJS, ChaiJS, and ExpectJS were used for unit testing.
    • Frontend builds were done with Gulp and Webpack.
    • Package management was done primarily with npm - with a few exceptions that required the use of Bower (also configured with JSON).
    • "Templating" was done with Javascript dialect JSX.
    • The frontend was build primarily with ReactJS (as the View) and Redux (as the Controller / Store / frontend model).
    • Configuration was done with json files.

    The only notable exceptions were the use of SCSS (augmented by Compass) for styling, Bash for a few basic 'system chores' and CLI utilities required for development of the app (most notably git and heroku's CLI interface), and a bit of custom SQL for locations where the ORM extractions leaked (the app is DB-agnostic, but a bit of SQL was required to fill gaps in the ORMs when interfacing with Postgres).

    Avatar of OutSystems
    OutSystems uses JavaScriptJavaScript

    Read more on how to extend the OutSystems UI with Javascript here.

    OutSystems provides a very simple to use AJAX mechanism. However, developers can also use JavaScript extensively to customize how users interact with their applications, to create client side custom validations and dynamic behaviors, or even to create custom, very specific, AJAX interactions. For example, each application can have an application-wide defined JavaScript file or set of files included in resources. Page-specific JavaScript can also be defined.

    Avatar of Gorka Llona
    Gorka Llona uses JavaScriptJavaScript

    This GNU/GPL licensed Javascript library allows you to draw complex organizational charts that can't be drawn using Google's tool or equivalents. Orgchart structures are specified with JSON and can be generated on-the-fly by server-side scripts and databases. Events can be attached to clicks over the boxes. Multiple options can be defined; look at the repo for examples. This 1300-code-lines software component with contributors from 8 countries (and others for which I have to integrate their works) appears in the first page of Google Search results when searching for "Javascript Organizational Chart Library".

    Avatar of Cloudcraft
    Cloudcraft uses JavaScriptJavaScript

    JavaScript gets a bad rep, quite undeservedly so in my opinion. Today, JS is closer to functional languages than to the traditional-OO languages, and when used as such provides a great development experience. The pace of development is just picking up with transpilers like Babel making future advanced language features available to the masses today. At Cloudcraft.co, we write 100% of both the front-end (with React) and the backend (with Node.js) in Javascript, using the latest ES6 and even some ES7 features. This is not your grandfather's Javascript!

    Avatar of Brandon Adams
    Brandon Adams uses ClojureClojure

    Cloure is a high level language that provides access to both the JVM (for server-side development) and javascript (for client-side development) with largely the same language. This is important to limit context switching and enable code-reuse during fast product cycles. Clojure is ideal for rapid prototyping and has a strong focus on stability, correctness, and concurrency. Tools like Schema and Spec enable well-structured development and high code confidence.

    Avatar of Brian Fults
    Brian Fults uses ClojureClojure

    To complement Java. The REPL lets me interactively exercise Java code. I can write performant and safe libraries in Java, and then use them in Clojure. I also find the data-centric aspect of Clojure (excellent build-in structures, literal syntax for easily creating those structures, functions that act well on abstractions of those structures) good for data processing.

    This fits a sweet spot between Ruby and Java.

    Avatar of MOKA Analytics
    MOKA Analytics uses JavaScriptJavaScript

    The application front-end is written in JavaScript (ES6). We originally selected it over TypeScript because many library typings at the time were still flaky and the transpilation time was slow.

    We are now re-considering TypeScript because 1) the tooling has improved significantly, and 2) and the root cause of the majority of our front-end bugs are related to typing (despite having PropTypes).

    Avatar of BandSquare
    BandSquare uses ClojureClojure

    We use Clojure mostly for its "Minority Report"-like interactive development in situations that require 'semi-automatic programming' (data inspection, admin tasks, API exploration, scrapers, etc.). We have also used Clojure successfully to build some components of our stack very quickly and reliably, in the backend and the frontend.

    Avatar of Vladislav Moshynec
    Vladislav Moshynec uses PHPPHP

    Use the ipwhois.io IP lookup API to quickly and simply integrate IP geolocation into your script or website. Save yourself the hassle of setting up local GeoIP libraries and having to remember to regularly update the data.

    GitHub

    Avatar of papaver
    papaver uses ClojureClojure

    just started learning clojure, maybe around two weeks or so. i'm addicted. this is what i want to be working with and learning for the foreseeable future. the elegance of the language is refreshing. the community is really amazing. i've finally found a language that fits my passion for programming.

    Avatar of ShadowICT
    ShadowICT uses PHPPHP

    We use PHP as our main backend preprocessor. Being a well established language, it is supported by a large community as well as a dedicated team of developers. It is used for much heavier projects that do not require realtime processes as well as being used in a hybrid system alongside NodeJS.

    Avatar of CloudRepo
    CloudRepo uses ClojureClojure

    Clojure simplifies and reduces the coding efforts involved in creating CloudRepo. The fact that it runs in the JVM gives us access to all the libraries that we could ever need. Our code base is much smaller and easier to reason about than it would have been had we gone with pure Java.

    Avatar of Andrew Gatenby
    Andrew Gatenby uses PHPPHP

    PHP has been the backbone of what we've done at Visualsoft for years. We have lots of experienced people who have used it and know how to get the best out of it. It's come on leaps and bounds over recent years, and is the basis of pretty much everything we'll build with.

    Avatar of Ordius IT Solutions Pvt Ltd
    Ordius IT Solutions Pvt Ltd uses PHPPHP

    The reason being they are simple to learn and easy to implement apps on any size.

    The learning curve for PHP and MySQL is less compared to MEAN. It’s advisable to learn PHP and MySQL if you want to have a taste of web-development or you are in a hurry.

    Avatar of IPWHOIS.io - IP Geolocation API
    IPWHOIS.io - IP Geolocation API uses PHPPHP

    Use the ipwhois.io IP lookup API to quickly and simply integrate IP geolocation into your script or website. Save yourself the hassle of setting up local GeoIP libraries and having to remember to regularly update the data.

    How much does Clojure cost?
    How much does JavaScript cost?
    How much does PHP cost?
    Pricing unavailable
    Pricing unavailable
    Pricing unavailable