diff --git a/iclc2023/slides/src/Highlight.jsx b/iclc2023/slides/src/Highlight.jsx index 3b331a385..a885e88a0 100644 --- a/iclc2023/slides/src/Highlight.jsx +++ b/iclc2023/slides/src/Highlight.jsx @@ -8,7 +8,7 @@ import hs from 'react-syntax-highlighter/dist/esm/languages/hljs/haskell'; SyntaxHighlighter.registerLanguage('javascript', js); SyntaxHighlighter.registerLanguage('haskell', hs); -function Highlight({ code, language }) { +function Highlight({ code, language = 'javascript' }) { return (
diff --git a/iclc2023/slides/src/Slides.jsx b/iclc2023/slides/src/Slides.jsx index 73d41bd9f..2e0188d90 100644 --- a/iclc2023/slides/src/Slides.jsx +++ b/iclc2023/slides/src/Slides.jsx @@ -21,12 +21,18 @@ const order = [ 'whatIsStrudel', 'history', 'hs2js', - 'mini-comparison', 'patterns-events', - 'events-audio', - 'transpilation', + 'events-audio', // outputs + 'outputs', + // 'replflow', - 'systems', + 'transpilation', + 'mininotation', + 'mini-comparison', + // scheduling? + // pattern alignment? + // flexible typing? + // future outlook? ]; const slideEntries = order.map((name) => loadedMDXFiles.find(([file]) => file === name)); diff --git a/iclc2023/slides/src/TranspilationDemo.jsx b/iclc2023/slides/src/TranspilationDemo.jsx index b0996fc5f..1ec43c595 100644 --- a/iclc2023/slides/src/TranspilationDemo.jsx +++ b/iclc2023/slides/src/TranspilationDemo.jsx @@ -66,28 +66,12 @@ function TranspilationDemo() {
-
    -
  • Enter JS Code
  • -
  • Parse JS Code with acorn to get AST
  • -
  • Modify AST with estree-walker
  • -
  • Convert modified AST back to JS with escodegen
  • -
- , +
    +
  • Parse JS Code with acorn to get AST
  • +
  • Modify AST with estree-walker
  • +
  • Convert modified AST back to JS with escodegen
  • +
, , -
- ⬇️ calls - - ➡️ location can be used for highlighting -
, ]} />
diff --git a/iclc2023/slides/src/slides/mininotation.mdx b/iclc2023/slides/src/slides/mininotation.mdx new file mode 100644 index 000000000..2e07e1175 --- /dev/null +++ b/iclc2023/slides/src/slides/mininotation.mdx @@ -0,0 +1,27 @@ +import Highlight from '../Highlight'; +import Stepper from '../Stepper'; + +# User Code: Mini Notation + + +
  • Parse Mini Notation to get AST
  • +
  • walk AST and construct function calls
  • + , +
    + + ⬇️ resulting calls + + ➡️ location can be used for highlighting +
    , + ]} +/> diff --git a/iclc2023/slides/src/slides/outputs.mdx b/iclc2023/slides/src/slides/outputs.mdx new file mode 100644 index 000000000..8a59c367f --- /dev/null +++ b/iclc2023/slides/src/slides/outputs.mdx @@ -0,0 +1,7 @@ +# Ways to make Sound + +- Default: Web Audio API +- OSC via osc-js, compatible with superdirt +- Csound via the Csound WebAssembly build +- MIDI via WebMIDI +- Serial via WebSerial diff --git a/iclc2023/slides/src/slides/replflow.mdx b/iclc2023/slides/src/slides/replflow.mdx index 216af1557..8ccdfa3c0 100644 --- a/iclc2023/slides/src/slides/replflow.mdx +++ b/iclc2023/slides/src/slides/replflow.mdx @@ -1,3 +1,5 @@ # REPL -![replflow](./img/strudelflow.png) +
    + +
    diff --git a/iclc2023/slides/src/slides/systems.mdx b/iclc2023/slides/src/slides/systems.mdx deleted file mode 100644 index dbebf3d57..000000000 --- a/iclc2023/slides/src/slides/systems.mdx +++ /dev/null @@ -1,5 +0,0 @@ -# Systems Comparison - -tidal: keyboard -> editor -> tidal plugin -> superdirt -> supercollider -> speakers - -strudel: keyboard -> repl -> speakers diff --git a/iclc2023/slides/src/slides/transpilation.mdx b/iclc2023/slides/src/slides/transpilation.mdx index 3e101aefa..859518e5c 100644 --- a/iclc2023/slides/src/slides/transpilation.mdx +++ b/iclc2023/slides/src/slides/transpilation.mdx @@ -1,5 +1,5 @@ import TranspilationDemo from '../TranspilationDemo'; -# Transpilation +# User Code: Transpilation