jashkenas / jashkenas/coffeescript
Support CoffeeScript on the new `deno` JavaScript engine
Nobody has claimed this yet.
- Dominant language
- CoffeeScript
- Stars
- 16.6k
- Forks
- 2k
- PR merge metrics
- No merged PRs in 30d
Description
This is a **feature request** to see what is needed to support running CoffeeScript on the new [`deno`](https://deno.land/) js engine (see https://deno.land/).
The original author of [`node`](https://nodejs.org) is Ryan Dahl (@ry). After a decade of experience, there are several things that he would do over if he could do it all over again _de novo_ (thus, the name `deno`). There is an [excellent video](https://youtu.be/M3BM9TB-8yA) where he describes the rationale to start from scratch and build a modern, secure JavaScript runtime on V8. The `deno` engine (analogous to what `node` is), is a single binary executable written in `rust` that embeds the V8 engine and supports ES6 modules natively. Package management is also greatly simplified.
The `deno` engine has native support for additional languages such as TypeScript. It does this by automatically transpiling TypeScript code within an isolate and then feeding the transpiled js to the `deno` engine. Normal JavaScript is fed directly to the V8 engine. While `deno` isn't done yet, it would be great to be able to bring the beauty and [succinctness](http://www.paulgraham.com/power.html) of CoffeeScript to `deno` and this issue is an initial attempt to see what is needed to do so.
What I am requesting is to see if we can add support for CoffeeScript to be supported as a first-class isolate like TypeScript.
@GeoffreyBooth or @jashkenas, is this an ok place to raise the question?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no repository files or tests. Start by examining Deno’s TypeScript transpilation and isolate path alongside CoffeeScript’s compiler output, then define the integration boundary and validation needed for first-class support; done means a supported CoffeeScript workflow runs on Deno.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- coffeescript, deno
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100