Hybrid visual and textual functional programming.
Go to file
Dmytro Mitin 498587e271
Stub Out Gateway and Language Server Akka Services, Implement a Starting Subset of LSP (beginning) (#418)
* Rename language-server -> runner, add language-server, gateway

* Add entry point --lsp

* Add Gateway, LanguageServer

* Add stab for Initialize

* Add stubs for Initialize, Initialized

* Add GatewayTest

* fix PR

* increase timeout

* merge with master

* fix compilation after merge

* reformat with scalafmt

* Add TODOs

* Add doc for gateway

* Update CONTRIBUTING.md

* Refactor code for PR

* Add Request#response(..)

* Make Initialize, Initialized extractor objects

* Refactor for -> map

* Fix docs

* Remove DerivationConfig

* Make Request, Notification polymorphic

* Add Param.Array, Params.Array

* Replace Decoder#apply -> tryDecode

* Refactor code

* Add docs

* Refactor code

* Refactor code

* Refactor code

* Make gateway a pure actor

* Add client capabilities

* Add server capabilities

* Add docs for capabilities

* Add docs

* Add docs

* Fix Server.Config

* Update doc for Server

* Improve PR

* Rename Protocol -> JsonRpcController

* Add docs

* Fix identation.

* Fix identation

* Fix identation

* Fix identation

* Fix docs
2020-01-17 17:35:44 +02:00
.github Update PULL_REQUEST_TEMPLATE.md (#240) 2019-10-14 11:19:37 +01:00
common Add CI For Rust. (#410) 2020-01-15 11:56:42 +01:00
doc Record decisions about the return value of = (#427) 2020-01-15 10:01:56 +00:00
engine Stub Out Gateway and Language Server Akka Services, Implement a Starting Subset of LSP (beginning) (#418) 2020-01-17 17:35:44 +02:00
ide Fix paths in ide/README (#420) 2020-01-08 09:50:05 +00:00
project Enable Scalajs For Syntax (#329) 2019-11-26 14:02:50 +01:00
.gitignore Fix uncached flows, refactor and document the function call flow (#417) 2020-01-07 13:39:07 +01:00
.jvmopts Enable Scalajs For Syntax (#329) 2019-11-26 14:02:50 +01:00
.rustfmt.toml Bump the sbt and scala versions (#198) 2019-09-27 14:55:58 +01:00
.scalafmt.conf Enable Scalajs For Syntax (#329) 2019-11-26 14:02:50 +01:00
azure-pipelines.yml Add CI For Rust. (#410) 2020-01-15 11:56:42 +01:00
build.sbt Stub Out Gateway and Language Server Akka Services, Implement a Starting Subset of LSP (beginning) (#418) 2020-01-17 17:35:44 +02:00
Cargo.toml Initial Rust AST implementation (#348) 2019-11-22 15:21:18 +01:00
CODE_OF_CONDUCT.md Set up the repository (#1) 2019-06-11 17:07:54 +01:00
CONTRIBUTING.md Stub Out Gateway and Language Server Akka Services, Implement a Starting Subset of LSP (beginning) (#418) 2020-01-17 17:35:44 +02:00
LICENSE Set up the repository (#1) 2019-06-11 17:07:54 +01:00
README.md Add build status icon to readme 2019-11-18 11:28:01 +00:00

Build Status

Enso Programming Language

Visual and textual functional programming language with a focus on productivity, collaboration and development ergonomics.

Enso is a developers whiteboard on steroids. Design, prototype, develop and refactor any application simply by connecting visual elements together. Collaborate with co-workers, interactively fine tune parameters, inspect the results and visually profile the performance in real-time.

Visit The Enso Website to learn more!

This repository contains both the Enso Engine (its compiler, interpreter, runtime, and language server), and its cloud-ready IDE.

Contributing to Enso

If you are interested in contributing to the development of Enso, please read the CONTRIBUTING.md file. It describes all the ways in which you can help the project, as well as provides instructions for how to build Enso.

Enso's Design

If you would like to gain a better understanding of the principles on which Enso is based, or just delve into the why's and what's of Luna's design, please take a look in the doc/design/ folder.

This documentation will evolve as Enso does, both to help newcomers to the project understand the reasoning behind the code, but also to act as a record of the decisions that have been made through Enso's evolution.

License

This repository is licensed under the Apache 2.0, as specified in the LICENSE file.

Please be aware that, as the commercial backing for Enso, New Byte Order Sp. z o. o. reserves the right under the CLA to use contributions made to this repository as part of commercially available Enso products.

If these terms are unacceptable to you, please do not contribute to the repository.

The Contributor License Agreement

As part of your first contribution to this repository, you need to accept the Contributor License Agreement. You will automatically be asked to sign the CLA when you make your first pull request.

Any work intentionally submitted for inclusion in Luna shall be licensed under this CLA.

The CLA you sign applies to all repositories associated with the Enso project, so you will only have to sign it once at the start of your contributions.