Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
TidalCycles - Haskell meets Music
Search
cannorin
October 04, 2019
Technology
1.5k
0
Share
TidalCycles - Haskell meets Music
cannorin
October 04, 2019
More Decks by cannorin
See All by cannorin
AltJS を作るなら型変換を入れた方がいい
cannorin
0
1.4k
A Journey to Type-safe Vectors in F#
cannorin
6
11k
Audio Experience is greatly improved in VR: A Worked Example
cannorin
0
1.7k
Making Indian Curries - at Home!
cannorin
2
1.5k
On Space Filling Curves: Its Beauty and Applications
cannorin
0
360
A brief introduction to type inference
cannorin
4
2.5k
Other Decks in Technology
See All in Technology
Zephyr(RTOS)でOpenPLCを実装してみた
iotengineer22
0
180
スケーリングを封じられたEC2を救いたい
senseofunity129
0
140
Embeddings : Symfony AI en pratique
lyrixx
0
460
Physical AI on AWS リファレンスアーキテクチャ / Physical AI on AWS Reference Architecture
aws_shota
1
330
TUNA Camp 2026 京都Stage ヒューリスティックアルゴリズム入門
terryu16
0
670
15年メンテしてきたdotfilesから開発トレンドを振り返る 2011 - 2026
giginet
PRO
2
270
OCI技術資料 : 証明書サービス概要
ocise
1
7.2k
TanStack Start エコシステムの現在地 / TanStack Start Ecosystem 2026
iktakahiro
1
220
Kubernetesの「隠れメモリ消費」によるNode共倒れと、Request適正化という処方箋
g0xu
0
170
マルチモーダル非構造データとの闘い
shibuiwilliam
1
170
スクラムを支える内部品質の話
iij_pr
0
240
チームで育てるAI自走環境_20260409
fuktig
0
450
Featured
See All Featured
Building an army of robots
kneath
306
46k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
250
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
260
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Exploring anti-patterns in Rails
aemeredith
3
300
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Leo the Paperboy
mayatellez
6
1.6k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
91
Practical Orchestrator
shlominoach
191
11k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Transcript
VRC-LT #5 TidalCycles - Haskell meets Music cannorin (@cannorin_vrc)
2 誰 Study: 数理論理学, プログラム言語の理論 Job: F# プログラマ in VRC:
VOLT Enthusiast, VRC-LT Speaker (#2~)
3 世は大ライブコーディング時代 ライブコーディング a) 勉強会やプレゼンの一環として,その場でプログラム を書きながら解説などを行うこと. b) シェーダ言語や音響合成言語をリアルタイムで書いて パフォーマンスを行うこと.
4 世は大ライブコーディング時代 • 即興性・ライブ性が強く,作品そのものだけでなくそ れが作られる過程も伝える/楽しむことができる • アーティストのプログラミング学習やプログラマの自己 表現の手段となりうる → VRChat
でやるのにとても向いているのでは????
5 ライブコーディングでキックを鳴らしたい • フレンチコアという音楽ジャンルが大好き • 都合のよいことにプログラミングができる → ライブコーディングでフレンチコアしたい! → でもどうやって……?
6
7 TidalCycles との出会い
8 TidalCycles とは • 今最もアツい音響生成用ライブコーディング環境 • Haskell 上の DSL で実装されている(!)
• エディタから GHCi にコードを送ると TidalCycles が 受 け取り音を鳴らす • バックエンドは SuperCollider (別途インストール)
9 コード例1 -- トラックd1: フレンチコアキック d1 $ sound "909" --
TR-909 のキックを鳴らす # up (-2.5) -- ピッチを下げる # shape 0.92 -- ディストーションでぶっとくする # lpf 5000 -- 5000Hz 以上の音を切る
10 コード例2 -- トラックd2: オフビートのベース d2 $ n “[ ~
c ]*2” -- オフビートに鳴らす (~は休符) # sound "supersaw" -- ノコギリ波を鳴らす # crush 4 -- ビットクラッシャーにかける # up (-30) -- ピッチめちゃくちゃ下げる # shape 0.6 -- ぶっとくする # gain 1.15 -- ゲインを調整 # resonance 0 -- ローパスフィルタのクセをなくす # cut 2 -- 音が被らないようにする (2はID)
11 実演タイム?