From 48f6c4b656763f5354b2cda6707eb83cd3ccbf37 Mon Sep 17 00:00:00 2001 From: Fedor Isakov Date: Tue, 13 Jun 2017 15:43:12 +0200 Subject: [PATCH] README file and screenshots. --- README.md | 86 +++++++++++++++++++++++++++ doc/img/activation-trace-example.png | Bin 0 -> 93204 bytes doc/img/menu-example.png | Bin 0 -> 203248 bytes doc/img/type-annotation-example.png | Bin 0 -> 81750 bytes doc/img/typing-rule-example.png | Bin 0 -> 88240 bytes 5 files changed, 86 insertions(+) create mode 100644 README.md create mode 100644 doc/img/activation-trace-example.png create mode 100644 doc/img/menu-example.png create mode 100644 doc/img/type-annotation-example.png create mode 100644 doc/img/typing-rule-example.png diff --git a/README.md b/README.md new file mode 100644 index 00000000..3aec1f02 --- /dev/null +++ b/README.md @@ -0,0 +1,86 @@ +# Type Checking with Constraint Rules + +An experimental feature for [JetBrains MPS](https://jetbrains.com/mps) implementing a better type checking and type inference using constraint rules. + +## Status + +**TODO: Build status here** + +The status of this project is **pre-release**. Don’t rely on any of the language features or the API to be stable. The purpose of this project is to show the new technology and collect early feedback. + +## Overview + +This project is the result of the research done within the MPS team in the area of code analysis using constraint rules, in particular [CHR](http://www.informatik.uni-ulm.de/pm/fileadmin/pm/home/fruehwirth/constraint-handling-rules-book.html). + +Typing rules serve as templates that produce constraint rules. Both transformation to constraint rules and evaluating is done in-memory at the time type checking is launched. Constraint rules are processed by the embedded [engine](https://github.com/fisakov/conreactor). + +The source code also contains the typing rules for *baseLanguage*, which serve to demonstrate how the various type inference problems are solved. + +## Features + +The language *jetbrains.mps.typesystem2* enables to write typing rules. A custom aspect «types» is used to store the typing rules in the language source code. + +![Example of a typing rule](/doc/img/typing-rule-example.png) + +Type checking plugin for MPS provides the actions for checking the types in a currently opened root. + +![](/doc/img/menu-example.png) + +Constraints activation trace view for debugging the process of evaluating constraint rules. + +![Activation trace](/doc/img/activation-trace-example.png) + +Once finished, the constraint rules produce the inferred types and type errors, which are added as highlighter annotations to the editor. + +![](doc/img/type-annotation-example.png) + +## Dependencies + +The source code can be opened with the latest version of JetBrains MPS, which is 2017.1. The plugin that is created with the build script is also compatible with the same version of MPS. + +## Installation + +See the downloads section of the latest release for the plugin archive. This archive has to be unpacked to the MPS plugins folder on your local drive. For example (using macOS): + +`unzip typechecker-0.1.zip -d ~/Library/Application\ Support/MPS2017.1/` + +## Hacking + +The project is built using [gradle](http://www.gradle.org). To work with the source code, follow these steps: + +1. Install JetBrains MPS using [this link](https://jetbrains.com/mps/download). +2. Clone this repository to your local drive. +3. [optional] In the project folder put a *symlink* called «MPS_HOME» that leads to the MPS home folder: + + `ln -s /Applications/MPS\ 2017.1.app/Contents MPS_HOME` + + By doing so you skip unpacking the MPS distribution by the gradle script. + +4. Run gradle using the following command: + + `gradle build` + + If you want to run the tests as well as building the project, execute this instead: + + `gradle test` + +5. The project is now ready to be opened with MPS. + + NOTE: every time the source tree is cleaned, for example with `git clean` command, the gradle build has to be run in order to download the necessary libraries. + +## License + +Copyright 2014-2017 JetBrains s.r.o. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + diff --git a/doc/img/activation-trace-example.png b/doc/img/activation-trace-example.png new file mode 100644 index 0000000000000000000000000000000000000000..9514a92e143bfce9393a4d8f54a580992e99d862 GIT binary patch literal 93204 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