forked from enso-org/enso
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 9cfd850
Showing
231 changed files
with
26,672 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,105 @@ | ||
############# | ||
## Haskell ## | ||
############# | ||
|
||
dist | ||
cabal-dev | ||
*.o | ||
*.hi | ||
*.chi | ||
*.chs.h | ||
*.dyn_o | ||
*.dyn_hi | ||
.hpc | ||
.hsenv | ||
.cabal-sandbox/ | ||
cabal.sandbox.config | ||
*.cabal | ||
*.prof | ||
*.aux | ||
*.hp | ||
.stack-work/ | ||
|
||
|
||
############ | ||
## Python ## | ||
############ | ||
|
||
# Byte-compiled / optimized / DLL files | ||
__pycache__/ | ||
*.py[cod] | ||
*$py.class | ||
|
||
# C extensions | ||
*.so | ||
|
||
# Distribution / packaging | ||
.Python | ||
develop-eggs/ | ||
dist/ | ||
downloads/ | ||
eggs/ | ||
.eggs/ | ||
lib/ | ||
lib64/ | ||
parts/ | ||
sdist/ | ||
var/ | ||
*.egg-info/ | ||
.installed.cfg | ||
*.egg | ||
|
||
# PyInstaller | ||
# Usually these files are written by a python script from a template | ||
# before PyInstaller builds the exe, so as to inject date/other infos into it. | ||
*.manifest | ||
*.spec | ||
|
||
# Installer logs | ||
pip-log.txt | ||
pip-delete-this-directory.txt | ||
|
||
# Unit test / coverage reports | ||
htmlcov/ | ||
.tox/ | ||
.coverage | ||
.coverage.* | ||
.cache | ||
nosetests.xml | ||
coverage.xml | ||
*,cover | ||
.hypothesis/ | ||
|
||
# Translations | ||
*.mo | ||
*.pot | ||
|
||
# Django stuff: | ||
*.log | ||
local_settings.py | ||
|
||
# Flask instance folder | ||
instance/ | ||
|
||
# Sphinx documentation | ||
docs/_build/ | ||
|
||
# PyBuilder | ||
target/ | ||
|
||
# IPython Notebook | ||
.ipynb_checkpoints | ||
|
||
# pyenv | ||
.python-version | ||
|
||
# ghc-mod | ||
.haskell-ghc-mod.json | ||
|
||
############################ | ||
## Luna compiler specific ## | ||
############################ | ||
|
||
build/dist/ | ||
build/.stack-work/ | ||
bin/luna |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
steps: | ||
- imports: | ||
align: group | ||
list_align: after_alias | ||
long_list_align: inline | ||
list_padding: 4 | ||
separate_lists: true | ||
|
||
- language_pragmas: | ||
style: vertical | ||
align: true | ||
remove_redundant: true | ||
|
||
- records: {} | ||
|
||
- tabs: | ||
spaces: 4 | ||
|
||
- trailing_whitespace: {} | ||
|
||
columns: 200 | ||
|
||
language_extensions: | ||
- AllowAmbiguousTypes | ||
- ApplicativeDo | ||
- Arrows | ||
- BangPatterns | ||
- BinaryLiterals | ||
- ConstraintKinds | ||
- DataKinds | ||
- DefaultSignatures | ||
- DeriveDataTypeable | ||
- DeriveFoldable | ||
- DeriveFunctor | ||
- DeriveGeneric | ||
- DeriveTraversable | ||
- DoAndIfThenElse | ||
- DuplicateRecordFields | ||
- EmptyDataDecls | ||
- FlexibleContexts | ||
- FlexibleInstances | ||
- FunctionalDependencies | ||
- GeneralizedNewtypeDeriving | ||
- InstanceSigs | ||
- LambdaCase | ||
- MonadComprehensions | ||
# - MonadFailDesugaring | ||
- MultiWayIf | ||
- NamedWildCards | ||
- NegativeLiterals | ||
- NoImplicitPrelude | ||
- NumDecimals | ||
- OverloadedLabels | ||
- OverloadedStrings | ||
- PackageImports | ||
- RankNTypes | ||
- RecursiveDo | ||
- ScopedTypeVariables | ||
- StandaloneDeriving | ||
- TemplateHaskell | ||
- TupleSections | ||
- TypeApplications | ||
- TypeFamilies | ||
- TypeFamilyDependencies | ||
- TypeOperators | ||
- ViewPatterns | ||
|
||
- LiberalTypeSynonyms | ||
- RelaxedPolyRecs | ||
- MultiParamTypeClasses |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
# Luna programming language | ||
### Visual and textual functional programming language with a focus on productivity, collaboration and development ergonomics. | ||
|
||
Luna is a developer’s 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 www.luna-lang.org to learn more! | ||
|
||
## Getting Started | ||
|
||
These instructions give the most direct path to a working Luna development environment. | ||
|
||
### System Requirements | ||
|
||
Linux (Ubuntu 14.04-LTS, 15.10), MacOS (...) and Windows (...) are officialy supported host development operating systems. | ||
|
||
For MacOS, you need [the latest Xcode](https://developer.apple.com/xcode/downloads/) and the following dependencies: | ||
|
||
brew install git python3 pkg-config ghc cabal-install | ||
|
||
For Ubuntu, you'll need the following development dependencies: | ||
|
||
sudo apt-get install git python3 haskell-platform | ||
|
||
|
||
### Getting Sources for Luna compiler and its ecosystem tools | ||
|
||
**Via HTTPS** For those checking out sources as read-only, HTTPS works best: | ||
|
||
git clone https://github.com/wdanilo/luna.git | ||
git clone https://github.com/wdanilo/workflow.git | ||
|
||
|
||
**Via SSH** For those who plan on regularly making direct commits, | ||
cloning over SSH may provide a better experience (which requires | ||
uploading SSH keys to GitHub): | ||
|
||
git clone git@github.com:wdanilo/luna.git | ||
git clone git@github.com:wdanilo/workflow.git | ||
|
||
### Building Luna | ||
|
||
The `workflow/build` script is a high-level build wrapper for every project from Luna's ecosystem. To learn about the supported options, use the `help` one: | ||
|
||
workflow/build --help | ||
|
||
Note: Arguments after `--` above are passed directly to Haskell's build system [Stack](http://haskellstack.org). | ||
|
||
To fast start the development use the following command: | ||
|
||
workflow/build luna/compiler | ||
|
||
If you want to use the newest available libraries that Luna depends on, you can use the newest available versions on GitHub instead of Hackage. It is usefull if you are developing the libraries as well and don't want to wait until Hackage propagates information about new library versions: | ||
|
||
workflow/build --nightly luna/compiler | ||
|
||
You can also setup fully-flagged local development workspace and use local directories to override the sources of needed libraries. You will need a `libs` directory next to `workflow` and `luna` and use the `--develop` option: | ||
|
||
workflow/build --develop luna/compiler | ||
|
||
If you want to release a final Luna compiler version, you can enable the highest possible optimizations and disable some tricks used for compilation fastening using the `--release` flag instead. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
machine: | ||
python: | ||
version: 3.5.2 | ||
|
||
dependencies: | ||
pre: | ||
- curl -L https://github.com/commercialhaskell/stack/releases/download/v1.3.0/stack-1.3.0-linux-x86_64.tar.gz | tar zx -C /tmp | ||
- sudo mv /tmp/stack-1.3.0-linux-x86_64/stack /usr/bin | ||
override: | ||
- stack build --stack-yaml=shell/stack.yaml --only-dependencies --fast --install-ghc --test --ghc-options="-O0" | ||
cache_directories: | ||
- "~/.stack" | ||
- "shell/.stack-work" | ||
|
||
compile: | ||
override: | ||
- stack build --stack-yaml=shell/stack.yaml --fast --test --no-run-tests --no-run-benchmarks --ghc-options="-j2 -O0" | ||
|
||
test: | ||
override: | ||
#- if [ "$CIRCLE_BRANCH" == "master" ]; then ~/.local/bin/hlint -XTypeApplications -XRecursiveDo .; fi | ||
- stack build --stack-yaml=shell/stack.yaml --fast --test |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,127 @@ | ||
name: luna-core | ||
version: "0.1" | ||
author: Luna Team <contact@luna-lang.org> | ||
maintainer: Luna Team <contact@luna-lang.org> | ||
|
||
library: | ||
source-dirs: | ||
- src | ||
- src-libs | ||
other-modules: Paths_luna_core | ||
|
||
flags: | ||
debug: | ||
manual: false | ||
default: false | ||
|
||
when: | ||
- condition: flag(debug) | ||
cpp-options: -DDEBUG | ||
|
||
benchmarks: | ||
graph-builder: | ||
main: Main.hs | ||
source-dirs: test/bench | ||
dependencies: | ||
- criterion | ||
- luna-core | ||
|
||
tests: | ||
spec: | ||
main: Main.hs | ||
source-dirs: test/spec | ||
dependencies: | ||
- luna-core | ||
- directory | ||
- filepath | ||
- hspec | ||
- hspec-jenkins | ||
- open-browser | ||
|
||
dependencies: | ||
- aeson | ||
- base | ||
- binary | ||
- data-base | ||
- data-construction | ||
- dependent-state | ||
- ghc | ||
- mtl | ||
- prologue | ||
- transformers | ||
- ansi-wl-pprint # from now on src-libs deps vvv | ||
- bytestring | ||
- constraints | ||
- container | ||
- convert | ||
- data-default | ||
- data-prop | ||
- data-rtuple | ||
- either | ||
- exceptions | ||
- functor-utils | ||
- hspec | ||
- lens | ||
- lens-utils | ||
- open-browser | ||
- primitive | ||
- reflection | ||
- template-haskell | ||
- text | ||
- time | ||
- time-locale-compat | ||
- typelevel | ||
- vector | ||
- ansi-terminal | ||
- text-processing | ||
- vector-text | ||
- ansi-terminal | ||
- terminal-text | ||
|
||
default-extensions: | ||
- AllowAmbiguousTypes | ||
- ApplicativeDo | ||
- Arrows | ||
- BangPatterns | ||
- BinaryLiterals | ||
- ConstraintKinds | ||
- DataKinds | ||
- DefaultSignatures | ||
- DeriveDataTypeable | ||
- DeriveFoldable | ||
- DeriveFunctor | ||
- DeriveGeneric | ||
- DeriveTraversable | ||
- DoAndIfThenElse | ||
- DuplicateRecordFields | ||
- EmptyDataDecls | ||
- FlexibleContexts | ||
- FlexibleInstances | ||
- FunctionalDependencies | ||
- GeneralizedNewtypeDeriving | ||
- InstanceSigs | ||
- LambdaCase | ||
- MonadComprehensions | ||
# - MonadFailDesugaring | ||
- MultiWayIf | ||
- NamedWildCards | ||
- NegativeLiterals | ||
- NoImplicitPrelude | ||
- NumDecimals | ||
- OverloadedLabels | ||
- PackageImports | ||
- QuasiQuotes | ||
- RankNTypes | ||
- RecursiveDo | ||
- ScopedTypeVariables | ||
- StandaloneDeriving | ||
- TemplateHaskell | ||
- TupleSections | ||
- TypeApplications | ||
- TypeFamilies | ||
- TypeFamilyDependencies | ||
- TypeOperators | ||
- ViewPatterns | ||
|
||
- LiberalTypeSynonyms | ||
- RelaxedPolyRec |
Oops, something went wrong.