Get Advice Icon

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

ES6
ES6

12.6K
9.7K
+ 1
145
Scala
Scala

3K
2.2K
+ 1
1.4K
Add tool

ES6 vs Scala: What are the differences?

What is ES6? The next version of JavaScript. Goals for ECMAScript 2015 include providing better support for large applications, library creation, and for use of ECMAScript as a compilation target for other languages. Some of its major enhancements include modules, class declarations, lexical block scoping, iterators and generators, promises for asynchronous programming, destructuring patterns, and proper tail calls.

What is Scala? A pure-bred object-oriented language that runs on the JVM. 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.

ES6 and Scala can be primarily classified as "Languages" tools.

"ES6 code is shorter than traditional JS" is the primary reason why developers consider ES6 over the competitors, whereas "Static typing" was stated as the key factor in picking Scala.

Scala is an open source tool with 11.8K GitHub stars and 2.75K GitHub forks. Here's a link to Scala's open source repository on GitHub.

Slack, StackShare, and ebay are some of the popular companies that use ES6, whereas Scala is used by Twitter, Coursera, and 9GAG. ES6 has a broader approval, being mentioned in 1461 company stacks & 1725 developers stacks; compared to Scala, which is listed in 437 company stacks and 324 developer stacks.

- No public GitHub repository available -

What is ES6?

Goals for ECMAScript 2015 include providing better support for large applications, library creation, and for use of ECMAScript as a compilation target for other languages. Some of its major enhancements include modules, class declarations, lexical block scoping, iterators and generators, promises for asynchronous programming, destructuring patterns, and proper tail calls.

What is 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.
Get Advice Icon

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

Why do developers choose ES6?
Why do developers choose Scala?

Sign up to add, upvote and see more prosMake informed product decisions

    Be the first to leave a con
    What companies use ES6?
    What companies use Scala?

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

    What tools integrate with ES6?
    What tools integrate with Scala?

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

    What are some alternatives to ES6 and Scala?
    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.
    CoffeeScript
    It adds syntactic sugar inspired by Ruby, Python and Haskell in an effort to enhance JavaScript's brevity and readability. Specific additional features include list comprehension and de-structuring assignment.
    TypeScript
    TypeScript is a language for application-scale JavaScript development. It's a typed superset of JavaScript that compiles to plain JavaScript.
    jQuery
    jQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML.
    PHP
    Fast, flexible and pragmatic, PHP powers everything from your blog to the most popular websites in the world.
    See all alternatives
    Decisions about ES6 and Scala
    Nick Parsons
    Nick Parsons
    Director of Developer Marketing at Stream · | 33 upvotes · 218.4K views
    atStreamStream
    Go
    Go
    Stream
    Stream
    Python
    Python
    Yarn
    Yarn
    Babel
    Babel
    Node.js
    Node.js
    ES6
    ES6
    JavaScript
    JavaScript
    #Languages
    #FrameworksFullStack

    Winds 2.0 is an open source Podcast/RSS reader developed by Stream with a core goal to enable a wide range of developers to contribute.

    We chose JavaScript because nearly every developer knows or can, at the very least, read JavaScript. With ES6 and Node.js v10.x.x, it’s become a very capable language. Async/Await is powerful and easy to use (Async/Await vs Promises). Babel allows us to experiment with next-generation JavaScript (features that are not in the official JavaScript spec yet). Yarn allows us to consistently install packages quickly (and is filled with tons of new tricks)

    We’re using JavaScript for everything – both front and backend. Most of our team is experienced with Go and Python, so Node was not an obvious choice for this app.

    Sure... there will be haters who refuse to acknowledge that there is anything remotely positive about JavaScript (there are even rants on Hacker News about Node.js); however, without writing completely in JavaScript, we would not have seen the results we did.

    #FrameworksFullStack #Languages

    See more
    Jake Stein
    Jake Stein
    CEO at Stitch · | 15 upvotes · 74.7K views
    atStitchStitch
    ES6
    ES6
    JavaScript
    JavaScript
    CoffeeScript
    CoffeeScript
    React
    React
    AngularJS
    AngularJS

    Stitch’s frontend is used to configure data sources and destinations and monitor the status of each. Although we have been using AngularJS since its early days, we recently introduced React components into our front end, which many of our developers find easier to work with. We started using CoffeeScript when it was one of the few options for a more expressive alternative to vanilla JavaScript, but today we opt to instead write new code in ES6, which we feel is a more mature alternative.

    See more
    Marc Bollinger
    Marc Bollinger
    Infra & Data Eng Manager at Lumosity · | 4 upvotes · 55.4K views
    atLumosityLumosity
    Pulsar
    Pulsar
    Redis
    Redis
    Heron
    Heron
    Apache Storm
    Apache Storm
    Scala
    Scala
    Kafka
    Kafka
    Ruby
    Ruby
    Node.js
    Node.js

    Lumosity is home to the world's largest cognitive training database, a responsibility we take seriously. For most of the company's history, our analysis of user behavior and training data has been powered by an event stream--first a simple Node.js pub/sub app, then a heavyweight Ruby app with stronger durability. Both supported decent throughput and latency, but they lacked some major features supported by existing open-source alternatives: replaying existing messages (also lacking in most message queue-based solutions), scaling out many different readers for the same stream, the ability to leverage existing solutions for reading and writing, and possibly most importantly: the ability to hire someone externally who already had expertise.

    We ultimately migrated to Kafka in early- to mid-2016, citing both industry trends in companies we'd talked to with similar durability and throughput needs, the extremely strong documentation and community. We pored over Kyle Kingsbury's Jepsen post (https://aphyr.com/posts/293-jepsen-Kafka), as well as Jay Kreps' follow-up (http://blog.empathybox.com/post/62279088548/a-few-notes-on-kafka-and-jepsen), talked at length with Confluent folks and community members, and still wound up running parallel systems for quite a long time, but ultimately, we've been very, very happy. Understanding the internals and proper levers takes some commitment, but it's taken very little maintenance once configured. Since then, the Confluent Platform community has grown and grown; we've gone from doing most development using custom Scala consumers and producers to being 60/40 Kafka Streams/Connects.

    We originally looked into Storm / Heron , and we'd moved on from Redis pub/sub. Heron looks great, but we already had a programming model across services that was more akin to consuming a message consumers than required a topology of bolts, etc. Heron also had just come out while we were starting to migrate things, and the community momentum and direction of Kafka felt more substantial than the older Storm. If we were to start the process over again today, we might check out Pulsar , although the ecosystem is much younger.

    To find out more, read our 2017 engineering blog post about the migration!

    See more
    Antonio Kobashikawa
    Antonio Kobashikawa
    Web developer | Blogger | Freelancer at Rulo Kobashikawa · | 4 upvotes · 46.2K views
    Koa
    Koa
    ES6
    ES6
    JavaScript
    JavaScript
    Ionic
    Ionic
    Vue.js
    Vue.js
    MongoDB
    MongoDB
    ExpressJS
    ExpressJS
    Node.js
    Node.js

    We are using Node.js and ExpressJS to build a REST services that is middleware of a legacy system. MongoDB as database. Vue.js helps us to make rapid UI to test use cases. Frontend is build for mobile with Ionic . We like using JavaScript and ES6 .

    I think next step could be to use Koa but I am not sure.

    See more
    Johnny Bell
    Johnny Bell
    Senior Software Engineer at StackShare · | 9 upvotes · 116.1K views
    atStackShareStackShare
    Apollo
    Apollo
    GraphQL
    GraphQL
    MobX
    MobX
    JavaScript
    JavaScript
    ES6
    ES6
    React
    React
    jQuery
    jQuery
    #Context
    #Hooks🎣

    We are always building new features and replacing old code at StackShare. Lately we have been building out new features for the frontend, and removing a lot of old jQuery code (sorry jQuery but it's time to go).

    We've mainly been using React, ES6 and JavaScript on the frontend to build out the components, and we've been slowly removing some legacy MobX and using GraphQL and Apollo for our state management, if we need to control state further than GraphQL and Apollo allows us to we use just plain React with #context , or the new fancy React #hooks🎣 .

    As we've moved towards the above tech, its really made smashing out new features and updating legacy code super fast, and really fun!

    See more
    Hampton Catlin
    Hampton Catlin
    VP of Engineering at Rent The Runway · | 9 upvotes · 12.1K views
    atRent the RunwayRent the Runway
    React
    React
    TypeScript
    TypeScript
    ES6
    ES6
    JavaScript
    JavaScript

    We use JavaScript because it's the standard for web development, especially with browser execution. And, over the years, some smart work by the W3C has taken Javascript from the most-hated-language to the okay-I-can-make-that-good. No small feat!

    Obviously, using ES6 and TypeScript is what makes it decent in browser contexts. Throw in a bit of React and now we're cooking with gas!

    See more
    Alex A
    Alex A
    Founder at PRIZ Guru · | 3 upvotes · 45.5K views
    atPRIZ GuruPRIZ Guru
    Gradle
    Gradle
    Groovy
    Groovy
    Scala
    Scala
    Play
    Play
    Grails
    Grails

    Some may wonder why did we choose Grails ? Really good question :) We spent quite some time to evaluate what framework to go with and the battle was between Play Scala and Grails ( Groovy ). We have enough experience with both and, to be honest, I absolutely in love with Scala; however, the tipping point for us was the potential speed of development. Grails allows much faster development pace than Play , and as of right now this is the most important parameter. We might convert later though. Also, worth mentioning, by default Grails comes with Gradle as a build tool, so why change?

    See more
    Vadim Bakaev
    Vadim Bakaev
    Scala
    Scala
    Haskell
    Haskell

    Why I am using Haskell in my free time?

    I have 3 reasons for it. I am looking for:

    Fun.

    Improve functional programming skill.

    Improve problem-solving skill.

    Laziness and mathematical abstractions behind Haskell makes it a wonderful language.

    It is Pure functional, it helps me to write better Scala code.

    Highly expressive language gives elegant ways to solve coding puzzle.

    See more
    ES6
    ES6
    JavaScript
    JavaScript
    Socket.IO
    Socket.IO
    Redis
    Redis
    MongoDB
    MongoDB
    HTML5
    HTML5
    FeathersJS
    FeathersJS
    Redux
    Redux
    React
    React

    I have always been interested in building a real-time multiplayer game engine that could be massively scalable, and recently I decided to start working on a MMO version of the classic "snake" game. I wanted the entire #Stack to be based on ES6 JavaScript so for the #Backend I chose to use FeathersJS with MongoDB for game/user data storage, Redis for distributed mutex and pub/sub, and Socket.IO for real-time communication. For the #Frontend I used React with Redux.js, the FeathersJS client as well as HTML5 canvas to render the view.

    See more
    Tom Klein
    Tom Klein
    CEO at Gentlent · | 4 upvotes · 29.3K views
    atGentlentGentlent
    Python
    Python
    Electron
    Electron
    Socket.IO
    Socket.IO
    Google Compute Engine
    Google Compute Engine
    TypeScript
    TypeScript
    ES6
    ES6
    Ubuntu
    Ubuntu
    PostgreSQL
    PostgreSQL
    React
    React
    nginx
    nginx
    Sass
    Sass
    HTML5
    HTML5
    PHP
    PHP
    Node.js
    Node.js
    JavaScript
    JavaScript

    Our most used programming languages are JavaScript / Node.js for it's lightweight and fast use, PHP because everyone knows it, HTML5 because you can't live without it and Sass to write great CSS. Occasionally, we use nginx as a web server and proxy, React for our UX, PostgreSQL as fast relational database, Ubuntu as server OS, ES6 and TypeScript for Node, Google Compute Engine for our infrastructure, and Socket.IO and Electron for specific use cases. We also use Python for some of our backends.

    See more
    Osamah Aldoaiss
    Osamah Aldoaiss
    UI Engineer | Maker at Triad Apparel Inc. · | 6 upvotes · 12.3K views
    atTriad Apparel Inc.Triad Apparel Inc.
    JavaScript
    JavaScript
    ES6
    ES6
    Node.js
    Node.js
    GraphQL
    GraphQL
    React
    React
    Lighthouse
    Lighthouse
    Gatsby
    Gatsby

    Gatsby has been at the core of our Shop system since day one. It gives its User the power to create fast and performant sites out-of-the-box. You barely have to do anything to get great Lighthouse results. And it all runs on ES6 JavaScript.

    The power of SSR React and then hydrating it client-side to add interactivity and App-like feel is what makes Gatsby powerful.

    It comes with a ton of plugins, that are mind-boggling: Image Processing, GraphQL, Node.js, and so much more. This is thanks to a great ecosystem, a great user-base and the revolutionary Community work, which led to the Gatsby repo to be one of the most committed to, out there.

    See more
    Pedro Arnal Puente
    Pedro Arnal Puente
    CTO at La Cupula Music SL · | 8 upvotes · 12.8K views
    atLa Cupula Music SLLa Cupula Music SL
    JavaScript
    JavaScript
    ES6
    ES6
    Babel
    Babel
    ESLint
    ESLint
    Webpack
    Webpack
    Vue.js
    Vue.js
    jQuery UI
    jQuery UI
    jQuery
    jQuery

    We are phasing out jQuery and jQuery UI in favour or Vue.js and @Vue-cli so we can support building a modern, well-architectured frontend.

    The JavaScript build pipeline is supported by Webpack , and includes tools like ESLint and Babel , so we can properly support the latest ES/JS versions, with ES6 as the minimum baseline.

    See more
    Ali Soueidan
    Ali Soueidan
    Creative Web Developer at Ali Soueidan · | 16 upvotes · 86.4K views
    npm
    npm
    Babel
    Babel
    PHP
    PHP
    Adobe Illustrator
    Adobe Illustrator
    Asana
    Asana
    ES6
    ES6
    GitHub
    GitHub
    Git
    Git
    JSON
    JSON
    Sass
    Sass
    Pug
    Pug
    JavaScript
    JavaScript
    vuex
    vuex
    Vue.js
    Vue.js

    Application and Data: Since my personal website ( https://alisoueidan.com ) is a SPA I've chosen to use Vue.js, as a framework to create it. After a short skeptical phase I immediately felt in love with the single file component concept! I also used vuex for state management, which makes working with several components, which are communicating with each other even more fun and convenient to use. Of course, using Vue requires using JavaScript as well, since it is the basis of it.

    For markup and style, I used Pug and Sass, since they’re the perfect match to me. I love the clean and strict syntax of both of them and even more that their structure is almost similar. Also, both of them come with an expanded functionality such as mixins, loops and so on related to their “siblings” (HTML and CSS). Both of them require nesting and prevent untidy code, which can be a huge advantage when working in teams. I used JSON to store data (since the data quantity on my website is moderate) – JSON works also good in combo with Pug, using for loops, based on the JSON Objects for example.

    To send my contact form I used PHP, since sending emails using PHP is still relatively convenient, simple and easy done.

    DevOps: Of course, I used Git to do my version management (which I even do in smaller projects like my website just have an additional backup of my code). On top of that I used GitHub since it now supports private repository for free accounts (which I am using for my own). I use Babel to use ES6 functionality such as arrow functions and so on, and still don’t losing cross browser compatibility.

    Side note: I used npm for package management. 🎉

    *Business Tools: * I use Asana to organize my project. This is a big advantage to me, even if I work alone, since “private” projects can get interrupted for some time. By using Asana I still know (even after month of not touching a project) what I’ve done, on which task I was at last working on and what still is to do. Working in Teams (for enterprise I’d take on Jira instead) of course Asana is a Tool which I really love to use as well. All the graphics on my website are SVG which I have created with Adobe Illustrator and adjusted within the SVG code or by using JavaScript or CSS (SASS).

    See more
    Interest over time
    Reviews of ES6 and Scala
    No reviews found
    How developers use ES6 and Scala
    Avatar of datapile
    datapile uses ScalaScala

    Scala is the God of languages. A legend. The Mount Rushmore of hybrid OO/functional languages is Scala's face four times over.

    Ok, honestly, we love Scala. We love(d) Java (and it's parents C and C++), and we love(d) all the languages that borrowed cough stole cough from Java over the years such as Groovy, Clojure, and C#.

    It may not be perfect (it totally is, but since programming languages don't have egos of their own, we don't want to paint it too bright), but it is awesome. It runs on the JVM, you can utilize Spring, it works great for data processing (which is sorta kinda the thing we do here, folks), and it just makes sense at all levels.

    If you don't like Scala, we feel sorry for the projects that are suffering due to your choices, meanwhile we are using Scala to write everything from JavaScript, CSS, SQL, and JSON directly within itself (go figure), so in the end no one will know the beauty of this powerhouse language (except for our engineers, of course).

    Avatar of Foursquare
    Foursquare uses ScalaScala

    Nearly our entire server codebase is written in Scala (if you haven't heard of it, it's a programming language that is basically what you would get if Java + ML had a baby). This has worked out super well. It enables us to write concise easy to deal with code that is typechecked at compile time. It's also been a big help with recruiting.

    Avatar of Kurzor, s.r.o.
    Kurzor, s.r.o. uses ES6ES6

    We started using CoffeeScript years ago, so the switch to ES6 is quite natural in our team. ES6 of course advances the JS standard to a level of an advanced language. We are using it today simply because it: 1. helps to keep the code shorter, 2. integrates easily with JSX, 3. helps to deal with immutable using const.

    Avatar of papaver
    papaver uses ScalaScala

    worked with scala for around 2 years. really enjoyed the language and getting back into the world of functional. unfortunately the community is heavily fragmented and the language itself broken and inconsistent. that with the various factions involved made it a put of for long term investment.

    Avatar of Stanislaus Madueke
    Stanislaus Madueke uses ScalaScala

    Scala, Akka and Spray (which became Akka-Http) provided the building blocks for the menu service.
    Akka's actors and finite-state machine were a natural way to model a USSD menu (a series of stateful interactions between a subscriber and the USSD gateway).

    Avatar of Jake Taylor
    Jake Taylor uses ES6ES6

    ES6 is a new-ish, modern form of JavaScript that adds in extra functionality that make code cleaner and easier to work with, such as arrow functions, const and let declarations, array helper methods, object/array destructuring etc.

    Avatar of Giovanni Candido da Silva
    Giovanni Candido da Silva uses ScalaScala

    Replaces entirely the Java Language to build a much more expressive and powerful code on the backend, while leveraging at the same time the Java Platform Tools and Frameworks, is a mixture of old and mature with new and sexy.

    Avatar of Ryan VanBelkum
    Ryan VanBelkum uses ES6ES6

    ES6 (ES2015) is a huge improvement to the javascript spec. These additions are heavily leveraged in React development, such as spread operators, fat arrow functions, and classes.

    Avatar of Ataccama
    Ataccama uses ES6ES6

    ES6 brings some sweet features to the language. Our favourites are lambda-expressions, block-scoped consts and lets and Promises.

    Avatar of Mick Dekkers
    Mick Dekkers uses ES6ES6

    ES6/ES2015+ makes JavaScript a pleasure to write. Arrow functions, template literals and ES modules especially. RIP CoffeeScript.

    How much does ES6 cost?
    How much does Scala cost?
    Pricing unavailable
    Pricing unavailable
    News about ES6
    More news