Skip to content

Instantly share code, notes, and snippets.

View fennecdjay's full-sized avatar
🎵
Star Gwion, You'll make my day

Jérémie Astor fennecdjay

🎵
Star Gwion, You'll make my day
  • France
View GitHub Profile

Le Massacre des primevères

Rapport d’analyse de l’enregistrement

Enlever les intros sur:

  • Un Printemps
  • Je vous salue
  • Les Chevaux de Marly

Remarques sur les mixs

  • A l‘audition, il s’avère que le niveau de la voix est très

PRs Welcome Language grade: C/C++ Build Status

Gwion

gwion is a object-oriented programming language, aimed at making music

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

#ifndef __GWION_ALL
#include "gwion_util.h"
#include "gwion_ast.h"
#include "oo.h"
#include "arg.h"
#include "constant.h"
#include "nspc.h"
#include "env.h"
#include "vm.h"
#include "context.h"
@fennecdjay
fennecdjay / MdrInANutshell.md
Last active March 11, 2019 21:19
Mdr in a Nutshell

MDR in a nutshell

MDR is intented (but not limited) to be a markdown preprocessor.

It only supports a few commands

Snippet/Code

Define a piece of code

  • you'll later include somwhere
  • that you want written in a file
#include "swigmod.h"
static const char *usage = "\
Gwion Options (available with -gwion)\n\
[no additional options]\n\
\n";
class GWION : public Language {
enum Wrap_mode {
NO_CPP,
set nocompatible
set mouse=a
filetype plugin indent on
set foldenable
set foldmethod=marker
au FileType sh let g:sh_fold_enabled=5

Overview

Gwion is a musical programming language, similar to chuck.
It also provides high-level features, like templating and function pointers.
The main difference being an emphasis on performance.
This page is just a quick overview of the language.

Comments

Since block bock comments are a bad idea, only lines comments are enabled.

// this is a one line comment

Tests

test.sh requires valgrind there are two kinds of tests:

Gwion tests

those tests are just gwion (.gw) files, handling special comments:

  • // [skip] (optionally followed by reason to skip)