[obsidian] vault backup: 2025-08-21 12:54:51[
All checks were successful
Build / build (push) Successful in 10m17s
All checks were successful
Build / build (push) Successful in 10m17s
This commit is contained in:
@@ -9,13 +9,16 @@ Strongly-Timedというコンセプトの音楽プログラミング言語。[[G
|
||||
|
||||
C言語っぽいシンタックスでサンプル単位での正確なスケジューリングができるのが特徴。
|
||||
|
||||
命令型+クラスを作ったりのオブジェクト指向(継承もあり)。
|
||||
命令型+クラスを作ったりのオブジェクト指向(継承もあり)。`=>`でUGenの接続を表したり、代入したりと複数の機能を持つChucK演算子が存在するのがユニーク。
|
||||
|
||||
`now`に対してChucK演算子で`1::second => now;`みたいな命令をすることが、1秒スリープするという動作に相当する、独特の時間操作を持つ。
|
||||
|
||||
|
||||
shredという論理時間ベースの計量スレッドみたいなものを言語内からスポーン、もしくはコマンドから立ち上げることができる。1つのファイルをスレッド単位で立ち上げたり殺したりをリアルタイムで切り替えることで、[[ライブコーディング]]を実現している(ただし更新のタイミングでディレイやリバーブのテールは切れる)。
|
||||
|
||||
最近も活発に更新が進んでいて、モジュール機能などが導入された。
|
||||
|
||||
もともとはオーディオビジュアル的なライブコーディング環境Audicleというのがあり、それを簡略化したminiAudicleというのがメインのIDEとして使われている。
|
||||
もともとはオーディオビジュアル的なライブコーディング環境Audicleというのがあり、それを簡略化した[[miniAudicle]]というのがメインのIDEとして使われている。
|
||||
|
||||
最近は[[Emscripten]]でWeb経由でも動くようになってきた。
|
||||
|
||||
@@ -24,3 +27,5 @@ shredという論理時間ベースの計量スレッドみたいなものを言
|
||||
また、Chugin(チャグイン)というC++で書かれたネイティブな拡張を読み込むこともでき、[[Faust]]や[[TouchDesigner]]、[[Unity]]のような他の環境との連携も多く実現しているほか、AI系などのプラグインも開発されている。
|
||||
|
||||
Chugenという独自[[Unit Generator|UGen]]をChucK言語上で定義するための機能もある([[Csound]]におけるUser-Defined OpCode)。
|
||||
|
||||
パッケージマネージャが2025年ぐらいになって導入された。
|
||||
|
33
content/Dynamic Macro.md
Normal file
33
content/Dynamic Macro.md
Normal file
@@ -0,0 +1,33 @@
|
||||
---
|
||||
date: 2025-08-21 11:55
|
||||
---
|
||||
[[増井俊之]]が考案した、キーボード入力の履歴の中から繰り返し動作を自動で検出して再実行できるようにする仕組み
|
||||
|
||||
[Dynamic Macro - 増井俊之](https://scrapbox.io/masui/Dynamic_Macro)
|
||||
|
||||
実装が非常にシンプル。[[Atom]]用拡張機能の実装がわかりやすい
|
||||
|
||||
[atom-dynamic-macro/lib/atom-dynamic-macro.coffee at f050cac0d19eaac20ef2e5ff8092a9f5242cf481 · masui/atom-dynamic-macro · GitHub](https://github.com/masui/atom-dynamic-macro/blob/f050cac0d19eaac20ef2e5ff8092a9f5242cf481/lib/atom-dynamic-macro.coffee#L30C1-L47C8)
|
||||
|
||||
```coffeescript
|
||||
#
|
||||
# Detect repeated elements at the end of an array
|
||||
#
|
||||
# findRep [1,2,3] # => []
|
||||
# findRep [1,2,3,3] # => [3]
|
||||
# findRep [1,2,3,1,2,3] # => [1,2,3]
|
||||
# findRep [1,2,3,3,1,2,3,3] # => [1,2,3,3]
|
||||
# findRep [1,2,3], (x,y) -> x+1 == y # => [3]
|
||||
#
|
||||
findRep: (a,compare) ->
|
||||
compare = compare ? (x,y) -> x == y
|
||||
len = a.length
|
||||
res = []
|
||||
for i in [0...len/2]
|
||||
for j in [0..i]
|
||||
break unless compare(a[len-2-i-j], a[len-1-j])
|
||||
res = a[len-j..len-1] if i == j-1
|
||||
res
|
||||
```
|
||||
|
||||
配列を二分探索して、一番長い要素を検出?
|
@@ -3,7 +3,7 @@ date: 2025-01-15 15:30
|
||||
---
|
||||
#programming-language #computermusic
|
||||
|
||||
[[ChucK]]に影響を受けた言語。サンプル精度のスケジューリングに加えてtagged unionとかテンプレートとかラムダ式とか使える
|
||||
[[ChucK]]に影響を受けた[[音楽プログラミング言語]]。サンプル精度のスケジューリングに加えてtagged unionとかテンプレートとかラムダ式とか使える。ChucKオペレータも健在
|
||||
|
||||
[Welcome to Gwion - Gwion](https://gwion.github.io/Gwion/)
|
||||
|
||||
|
4
content/増井俊之.md
Normal file
4
content/増井俊之.md
Normal file
@@ -0,0 +1,4 @@
|
||||
---
|
||||
date: 2025-08-21 11:55
|
||||
---
|
||||
#stub
|
Reference in New Issue
Block a user