Skip to content
strongly-timed musical programming language
C Shell Other
Branch: master
Clone or download
Latest commit a61e126 Dec 7, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github 🔧 winaction? Dec 6, 2019
ast @ 1b62abe 🎨update Dec 6, 2019
examples 🎨 Fixes Nov 25, 2019
include 🎨 Update headers Dec 6, 2019
plug @ e91ecba 🎨 Update submodule Nov 26, 2019
po 💼 Updating fr [skip ci] Jul 4, 2019
scripts
src 🎨 Fix Dec 6, 2019
tests 🎨 Improve tests Dec 6, 2019
util @ b940fa8 🎨 Update [skipCi] Dec 6, 2019
.all-contributorsrc 📖 Coverall badge [skip ci] Jul 4, 2019
.bettercodehub.yml 📖 BCH Jul 3, 2019
.dockerignore 🔧 Add Docker [skip ci] Oct 15, 2019
.gitattributes 🔧 gitattributes Nov 17, 2017
.gitignore 🔧 Ignore objects and libs Oct 9, 2019
.gitmodules 🎨 Remove useless modules Oct 4, 2019
.travis.yml 🔧 Travis is back? Oct 9, 2019
Dockerfile 🔧 Add Docker [skip ci] Oct 15, 2019
License.txt 📖 GPL-3.0 License Jul 24, 2017
Makefile 🔧 Update install target Nov 26, 2019
README.md 📖 Update docs [skip ci] Oct 13, 2019
config.mk.orig 🔥 Remove optimize folder and keep TCO Jun 20, 2019
opcode.txt 🎨 Imporve emit_except Nov 29, 2019

README.md

Gwion

Build Status Language grade: C/C++ CII Best Practices Coveralls branch All Contributors BCH compliance

Gwion is a programming language, aimed at making music

strongly inspired by chuck, but adding a bunch high-level features:
templating, first-class functions and more.

It aims to be simple, small, fast, extendable and embeddable.

simple example code (hello_world.gw):

// print hello world
<<< "Hello World" >>>;

to run this, do

./gwion hello_world.gw

You want to know more? 😄 Look here Both outdated and WIP 👷 but a nice place to learn and contribute

Build

Download the source

You might just want the minimum to start with, try

git clone https://github.com/fennecdjay/Gwion
cd Gwion
git submodule update --init util ast
make

You can get a list of config files to tweak with

find . -name "config.mk"

Besides develloper options, you migth want to check USE_DOUBLE, in util/config.mk, which set the floating point size (float or double).

Reporting bugs / Contributing

👍 Every helping hand is welcome!!! 👍

If there's anything you see that can make Gwion better, please let us know!

📖 Please see the contributing page for more information.

Acknowledgements.

The whole Chuck team, for inspiration.
Paul Batchelor and the awesome soundpipe library, that got me started.

Contributors

Thanks goes to these wonderful people (emoji key):

Paul Batchelor
Paul Batchelor

💬 🐛 💻 🤔
Benny
Benny

💬 🐛 💻
Andrew Prentice
Andrew Prentice

💬 🐛 💻 🤔

This project follows the all-contributors specification. Contributions of any kind welcome!

NOTE: if you should be on the list of contributors but we forgot you, don't be shy and let us know!

You can’t perform that action at this time.