<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/the-proposal-to-split-javascript-into-two-languages-an-overview-mdlmsjvsq" -->

---
title: The Proposal to Split JavaScript into Two Languages: An...
description: A significant proposal by a Google engineer suggests splitting JavaScript into two separate languages, JS0 and JSSugar. JS0 would be a simplified core version...
canonical: https://daily.dev/posts/the-proposal-to-split-javascript-into-two-languages-an-overview-mdlmsjvsq
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: The Proposal to Split JavaScript into Two Languages: An Overview | daily.dev
og:description: A significant proposal by a Google engineer suggests splitting JavaScript into two separate languages, JS0 and JSSugar. JS0 would be a simplified core version...
og:url: https://daily.dev/posts/the-proposal-to-split-javascript-into-two-languages-an-overview-mdlmsjvsq
og:image: https://api.daily.dev/og/posts/MDlmSJVsq.png
og:image:alt: The Proposal to Split JavaScript into Two Languages: An Overview
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# The Proposal to Split JavaScript into Two Languages: An Overview

**[Collections](https://daily.dev/sources/collections)** · 2 min read · 0 upvotes · 0 comments

## Summary

A significant proposal by a Google engineer suggests splitting JavaScript into two separate languages, JS0 and JSSugar. JS0 would be a simplified core version directly implemented by engines, while JSSugar would have extended syntax and features, requiring compilation to JS0. The proposal aims to improve security, performance, and stability within JavaScript Virtual Machines. However, it has sparked controversy due to the potential complexity it could introduce to the ecosystem, particularly for newcomers.

## Content

# The Proposal to Split JavaScript into Two Languages: An Overview

A significant proposal by a Google engineer has sparked considerable debate within the JavaScript community. The proposition entails splitting JavaScript into two distinct languages: JS0 and JSSugar. This development aims to address various concerns within the programming ecosystem, including security, performance, and stability, by reducing the complexity within JavaScript Virtual Machines (VMs).

## What is Being Proposed?

The main thrust of the proposal is to introduce JS0, a simplified and core version of JavaScript. JS0 would be the language directly implemented by engines. On the other side, JSSugar would represent a more capable variant, incorporating extended syntax and features. The catch here is that JSSugar would need to be compiled down to JS0 using tools similar to Webpack.

## Goals and Potential Benefits

The proposal aims to strike a balance between continually evolving JavaScript features and the performance and security concerns of JavaScript engines. By distilling the core functionalities into JS0, the proposal seeks to streamline JavaScript VMs, potentially enhancing performance and ensuring better security and stability.

## Controversy and Concerns

Despite its objectives, the proposal has already become a point of contention among developers. Critics argue that introducing two separate languages could add layers of complexity to the JavaScript ecosystem. This added complexity might pose challenges for developers, especially newcomers, who would need to navigate and understand both JS0 and JSSugar. Furthermore, concerns have been raised about the broader implications this split may have on the existing tools, libraries, and educational resources within the JavaScript community.

## Additional Context: HTTP/3

While discussing advancements, it's worth mentioning HTTP/3, which also aims to improve performance and reliability using UDP instead of TCP, thus reducing packet loss. This is another instance of how evolving technologies continually seek to address existing limitations.

## Conclusion

The proposal to split JavaScript into JS0 and JSSugar represents a bold and transformative vision for the future of the language. While it aims to tackle pressing issues of security, performance, and complexity in VMs, its implementation could introduce new challenges and require significant adjustments within the developer community. As discussions continue, it remains to be seen how this proposal will shape the future direction of JavaScript.

---

Tags: [#tech-news](https://daily.dev/tags/tech-news), [#webdev](https://daily.dev/tags/webdev), [#javascript](https://daily.dev/tags/javascript)

[View this post on daily.dev](https://daily.dev/posts/the-proposal-to-split-javascript-into-two-languages-an-overview-mdlmsjvsq)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"The Proposal to Split JavaScript into Two Languages: An Overview","url":"https://daily.dev/posts/the-proposal-to-split-javascript-into-two-languages-an-overview-mdlmsjvsq","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/the-proposal-to-split-javascript-into-two-languages-an-overview-mdlmsjvsq"},"datePublished":"2024-10-25T05:24:48.933Z","dateModified":"2024-10-25T05:25:00.004Z","description":"A significant proposal by a Google engineer suggests splitting JavaScript into two separate languages, JS0 and JSSugar. JS0 would be a simplified core version...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/9c59c9bdfc96eebc1c3b7c759003f55b?_a=AQAEuiZ","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/9c59c9bdfc96eebc1c3b7c759003f55b?_a=AQAEuiZ","isAccessibleForFree":true,"articleSection":"Collections","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Collections","logo":"https://media.daily.dev/image/upload/s--fk_6ycEi--/f_auto,q_auto/v1780996001/logos/collections?_a=BAMAMiWQ0","url":"https://daily.dev/sources/collections"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/the-proposal-to-split-javascript-into-two-languages-an-overview-mdlmsjvsq","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"tech-news,webdev,javascript","timeRequired":"PT2M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Collections","item":"https://daily.dev/sources/collections"},{"@type":"ListItem","position":3,"name":"The Proposal to Split JavaScript into Two Languages: An Overview"}]}
```

