Hybrid visual and textual functional programming.
Go to file
Michał Wawrzyniec Urbańczyk 22c431c796
Parser Attaching Ids to Expressions (#577)
This PR makes two changes:
1. parser will give IDs to nodes' expressions (unless already set);
2. `ASTOf.equals` will not compare IDs

Both were already agreed to and implemented as part of `wip/mwu/graph-syntax` branch (though 1. in quite different shape). However, it was abandoned after Rust was selected as the technology for IDE "backend". Now, as we are reimplementing double representation in Rust we need parts of the technology back in the parser.

Prerequisite for https://github.com/luna/ide/issues/186.
Implements https://github.com/luna/ide/issues/228.
2020-03-09 15:49:04 +01:00
.github Update the bug report template 2020-03-09 13:51:28 +00:00
ci Add a CI check of artifact validity (#582) 2020-03-06 17:32:57 +01:00
common Parser Attaching Ids to Expressions (#577) 2020-03-09 15:49:04 +01:00
doc Add file/move message to language server (#574) 2020-03-09 14:26:10 +03:00
engine Add a --version flag to the cli (#584) 2020-03-09 13:44:40 +00:00
project Add a --version flag to the cli (#584) 2020-03-09 13:44:40 +00:00
.gitignore JSON-RPC Client Support Library for Rust (#429) 2020-01-18 03:45:38 +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 a --version flag to the cli (#584) 2020-03-09 13:44:40 +00:00
build.sbt Add a --version flag to the cli (#584) 2020-03-09 13:44:40 +00:00
Cargo.toml File Manager Client Libary for Rust (#454) 2020-01-25 02:38:59 +01:00
CODE_OF_CONDUCT.md Set up the repository (#1) 2019-06-11 17:07:54 +01:00
CONTRIBUTING.md text/openFile method (#575) 2020-03-06 15:17:46 +01:00
LICENSE Set up the repository (#1) 2019-06-11 17:07:54 +01:00
README.md Update README.md and CONTRIBUTING.md (#580) 2020-03-06 12:02:19 +00:00


Enso Studio

Enso Language


Overview

Build Status

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 Enso Engine (its compiler, interpreter, runtime, and language server). Its cloud-ready IDE can be found in a separate repository.

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 Enso'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.

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.