Différences

Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.

Lien vers cette vue

bresson:hfmk [2019/07/05 23:11]
Jean Bresson [SPCL2]
— (Version actuelle)
Ligne 1: Ligne 1:
-~~NOTOC~~ 
- 
-====== OpenMusic | Lisp/Visual Programming | Computer-Assisted Composition ====== 
- 
- 
-==== Hochschule für Musik Karlsruhe | Summer semester 2019==== 
- 
-** • Symbolische Programmierung mit Common Lisp (SPCL-2)** \\ 
-** • Musikalische Anwendungen der Symbolischen Programmierung (MASP-2)** \\ 
- 
-26/04 -- 10/05 -- 17/05: SPCL-2 11:00-12:30   |  MASP-2  <del>14:30-16:00</del> 13:30-15:00 \\ 
-21/06 -- 28/06 -- 05/07: SPCL-2 11:00-13:00   |  MASP-2  <del>14:30-16:30</del> 14:00-16:00 \\ 
- 
-Rules for Summesemester 2019 :\\ 
-- If you want to register to the course and examination: **[[mailto:jean.bresson@ircam.fr|send me an email]]** with your name before the end of the first session of courses (17/05)\\ 
-- Please try to attend regularly. It's only 6 days. 
- 
-Amir Teymuri provides tutoring hours for the Lisp classes. Contact him ! 
- 
- 
-===== Software / downloads ===== 
- 
-  * OpenMusic : **https://github.com/openmusic-project/OM6/releases**\\ 
-  * All OpenMusic-related projects (libraries etc.) : **https://github.com/openmusic-project/** 
- 
- 
-===== SPCL2 ===== 
- 
-<blockquote> 
-**{{https://nubo.ircam.fr/index.php/s/q5XwB9fGJaLKwT7|Topics covered in class #1 (26/04/2019)}}**: Lisp Basics, Evaluation, Assignation, Functions and Functional Programming 
- 
-**{{https://nubo.ircam.fr/index.php/s/76w62Ns6Gpd9ZJM|Topics covered in class #2 (10/05/2019)}}**: Conditionals, Applicative Programming, Recursion, Iterations 
- 
-**{{https://nubo.ircam.fr/index.php/s/CxYFimGfYgZpmQk|Topics covered in class #3 (17/05/2019)}}**: Types, Structures, Common Lisp Object System | 
-**{{https://nubo.ircam.fr/index.php/s/JeLybGS8ZmAyN5A|Lisp files}}** 
- 
-**{{https://nubo.ircam.fr/index.php/s/69Jfpm4zixTEj6w|Topics covered in classes #4 & #5 (21/06/2019)}}**: Packages, OM libraries, ... | **{{https://nubo.ircam.fr/index.php/s/22xcor4jaSY48He|homework-solutions.lisp}}** | **{{https://nubo.ircam.fr/index.php/s/8PX2HoS6Rn2deiA|objects.lisp}}** | **{{https://nubo.ircam.fr/index.php/s/CoF7y33SjwXC2Wj|inheritance.lisp}}** 
- 
-**Practice (classes #5 & #6) | The LOOPER class:** **{{https://nubo.ircam.fr/index.php/s/GxGbgnxCD4D7LAk|looper.lisp}}** |  **{{https://nubo.ircam.fr/index.php/s/474x3LZ86eBDPeW|looper-editor.lisp}}**. 
- 
-</blockquote> 
- 
-===== Project ===== 
- 
-For the Lisp part of the evaluation, you will have to deliver **your own OM library**.\\ 
-Here is the template we made in class: => **{{https://nubo.ircam.fr/index.php/s/2MsQNXyS9GqHNw5|your-lib.zip}}**.\\ 
- 
-===== Common Lisp ====== 
- 
-**Reading:** 
- 
-Interesting litterature and books on Lisp are freely available online. 
-Have a look in particular at: 
- 
-  * [[http://www.paulgraham.com/onlisp.html|On Lisp]] by Paul Graham. Chapters 1 to 4. 
-  * [[https://www.cs.cmu.edu/~dst/LispBook/|COMMON LISP: A Gentle Introduction to Symbolic Computation]] by David S. Touretzky. Chapters 1 to 7. 
- 
-... and the reference Common Lisp textbook: 
-  * [[http://www.cs.cmu.edu/Groups/AI/html/cltl/clm/clm.html|Common Lisp, the Language, 2nd Edition]] (aka CLtL2) by Guy L. Steele Jr. 
- 
- 
-**Common Lisp specs:** 
-  * http://www.lispworks.com/documentation/HyperSpec/Front/index.htm 
-  * Simplified: http://jtra.cz/stuff/lisp/sclr/ 
- 
- 
-<blockquote> 
-**Hints to edit Lisp code in OM** 
- 
-  * The OM Listener Window (see "Windows" menu) is the hub of the Lisp REPL. Keep it open and at sight (there's an option in the OM preferences to keep it in front of other windows). 
-  * Open text buffers with the menu File/New. 
-  * Save regularly and name your Lisp files with teh extension ".lisp" so that OM understand this is Lisp code. 
-  * In order to evaluate an expression, select it and use CMD+E (see the menu "Lisp") 
-  * If no expression is selected, the expression ending at the closing parenthesis immediately above the cursor will be evaluated. 
-  * You can also evaluate the whole file with CMD+Y (beware that all the expressions will be evaluated: keep your code clean and use comments !)   
-  * Prints and evaluation results are output to the Listener window. 
-  * Alternatively, the command CTRL+X-E also evaluates the expression or symbol ending right before the cursor. The result is printed on the little text area at the bottom of the text editor.  
- 
-</blockquote> 
- 
-===== MASP2 ===== 
- 
-<blockquote> 
-<color darkred>**=> Download/import all OM patches from here:**</color> **{{https://nubo.ircam.fr/index.php/s/dPoeBwXgMLzQzLC|[OpenMusic-patches]}}** 
-</blockquote> 
- 
-Patch previews (//Click to enlarge pictures...//) 
- 
-|{{:bresson:hfmk:maspii-1.png?140|Patch #1}}|{{:bresson:hfmk:maspii-2.png?220|Patch #2}}|{{:bresson:hfmk:maspii-3.png?220|Patch #3}}|{{:bresson:hfmk:maspii-4.png?220|Patch #4}}|{{:bresson:hfmk:maspii-5.png?220|Patch #5}}| 
- 
-|{{:bresson:hfmk:maspii-6.png?220|Patch #6}}|{{:bresson:hfmk:maspii-7.png?220|Patch #7}}|{{:bresson:hfmk:maspii-8.png?220|Patch #8}}|{{:bresson:hfmk:maspii-9.png?220|Patch #9}}|{{:bresson:hfmk:maspii-10.png?220|Patch #10}}| 
- 
-|{{:bresson:hfmk:maspii-11.png?220|Patch #11}}|{{:bresson:hfmk:maspii-12.png?220|Patch #12}}|{{:bresson:hfmk:maspii-13.png?220|Patch #13}}|{{:bresson:hfmk:maspii-14.png?220|Patch #14}}| 
- 
-|{{:bresson:hfmk:maspii-15.png?180|Patch #15}}|{{:bresson:hfmk:maspii-16.png?180|Patch #16}}|{{:bresson:hfmk:maspii-17.png?380|Patch #17}}|{{:bresson:hfmk:maspii-18.png?380|Patch #18}}| 
- 
- 
- 
-===== MASP-2 Audio patches (05/07/2019) ===== 
- 
-=> **[[https://nubo.ircam.fr/index.php/s/Z5z9iHbSKSXFwNA|HERE]]** 
- 
- 
- 
- 
-===== OpenMusic ===== 
- 
-  * [[http://repmus.ircam.fr/openmusic/|Main website]] 
-  * [[http://support.ircam.fr/docs/om/om6-manual/co/OM-Documentation.html|User manual]] 
-  * [[http://repmus.ircam.fr/openmusic/midi|MIDI setup]] 
- 
- 
- 
-<blockquote> 
-**Hints and keyboard shortcuts** 
-  * m = show / hide contents 
-  * v = evaluate the box 
-  * b = lock/unlock the box 
-  * evaluate a specific output = cmd+click 
-  * space-bar = play 
-  * i = initialize box size 
-  * n = display / hide the name of the box 
-  * d = show documentation 
- 
-//In the editors:// add something = cmd+click 
-</blockquote> 
- 
-===== Readings ===== 
- 
-**[[http://repmus.ircam.fr/openmusic/ombook|The OM Composer's Book Series]]** 
- 
-=> Vol. 2 (2008) {{https://nubo.ircam.fr/index.php/s/j4SFDzKKjYMAKJB|PDF (38.9Mo)}} / {{https://nubo.ircam.fr/index.php/s/nXWSHw2FdN7K8ns|PDF (low-res/8.3Mo)}}, Vol. 3 (2016) {{https://nubo.ircam.fr/index.php/s/b2MB637bNByyDdQ|PDF (91.8.9Mo)}} / {{https://nubo.ircam.fr/index.php/s/xXP67mS9rJennXL|PDF (low-res/15.7Mo)}}. 
- 
- 
-{{:openmusic:ombook:ombook1.jpg?100|}}{{:openmusic:ombook:ombook2.jpg?95|}}{{:openmusic:ombook:ombook3.jpg?82|}} 
- 
- 
-Some chapters about interpolation **[[https://nubo.ircam.fr/index.php/s/AwGRfAxR3wk6cSM|here]]**. 
- 
- 
-===== Archive ===== 
- 
-=== Winter semester 2018-2019 === 
- 
-** • [[.:masp|Musikalische Anwendungen der Symbolischen Programmierung (MASP-1)]]** \\ 
-** • [[.:masp2|Musikalische Anwendungen der Symbolischen Programmierung (MASP-2)]]** \\ 
-** • [[.:vprks|Visuelle Programmierung der Raum/Klangsynthese mit OpenMusic (VPRKS)]]**\\ 
-** • [[.:spcl|Symbolische Programmierung mit Common Lisp (SPCL / Intro)]]** \\ 
- 
- 
-/* **Personal appointments on Friday, 9/11, 10h-13h**\\ */ 
- 
- 
- 
-