# -*- mode: org -*- Archived entries from file /Users/tanders/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org * DONE Harmony model: Interval as score object :PROPERTIES: :ARCHIVE_TIME: 2008-02-14 Thu 00:22 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/1W Refactor harmony model :ARCHIVE_CATEGORY: Strasheela-TODO :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA :END: Explicit interval score object. Creation uses memoization for two given pitches. ?? Should I introduce further additional score objects like pitch and degree ?? Test interval class with memoization * DONE [#A] Refactor Strasheela distribution: recomputable support for random distribution :NEXT: CLOSED: [2008-02-22 Fri 19:22] :PROPERTIES: :ARCHIVE_TIME: 2008-02-22 Fri 19:22 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Efficiency :ARCHIVE_CATEGORY: Strasheela-TODO :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA :END: ** DONE Create SVN branch CLOSED: [2008-02-13 Wed 17:49] ** DONE Read howto merge changes of branch back to trunk CLOSED: [2008-02-20 Wed 09:13] decribed here: http://svnbook.red-bean.com/en/1.4/svn.branchmerge.commonuses.html record info here: [[file:~/oz/music/Strasheela/sourceforge-howto/svn-HOWTO.muse::Merging%20a%20Whole%20Branch%20to%20Another][file:~/oz/music/Strasheela/sourceforge-howto/svn-HOWTO.muse::Merging a Whole Branch to Another]] ** DONE Check out: there was an example for which it worked already CLOSED: [2008-02-21 Thu 18:10] Understand orig example by Raphael [[file:~/oz/music/Strasheela/strasheela/branches/strasheela-randomValueOrdering/strasheela/others/TODO/Refactor-ScoreDistribution.oz]] ** DONE Change score solver interface in ScoreDistribution.oz so that it works for all cases CLOSED: [2008-02-21 Thu 18:10] BTW: you may wan to create a Strasheela variant of the general solver object ** DONE Clean up documentation CLOSED: [2008-02-22 Fri 13:47] in ScoreDistribution do example ** DONE Merge code into trunk CLOSED: [2008-02-22 Fri 19:22] ** DONE Delete branch CLOSED: [2008-02-22 Fri 19:22] * DONE Graham's Tutorial update: fix remaining things :NEXT: CLOSED: [2008-02-23 Sat 15:21] :PROPERTIES: :ARCHIVE_TIME: 2008-02-23 Sat 15:21 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela documentation/Strasheela tutorial :ARCHIVE_CATEGORY: Strasheela-TODO :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA :END: ** TODO Revise Graham's update of StrasheelaPrototyper.oz [[file:~/oz/music/Strasheela/strasheela/trunk/strasheela/contributions/anders/Tutorial/source/StrasheelaPrototyper.oz]] E.g., there are a few unused variables: Chapter, ToplevelH, ... Where to start with this task? ** TODO Check/revise Tutorial Muse format export after Graham's update [[file:~/oz/music/Strasheela/strasheela/trunk/strasheela/contributions/anders/Tutorial/source/StrasheelaPrototyper.oz]] ** TODO Update StrasheelaPrototyper.oz doc to reflect new format [[file:~/oz/music/Strasheela/strasheela/trunk/strasheela/contributions/anders/Tutorial/source/StrasheelaPrototyper.oz::lt%20chapter%20gt][file:~/oz/music/Strasheela/strasheela/trunk/strasheela/contributions/anders/Tutorial/source/StrasheelaPrototyper.oz::lt chapter gt]] ** TODO Delete temporal branch strasheela-updateTutorial * DONE Strasheela tutorial: finish music representation 'chapter' :PROPERTIES: :ARCHIVE_TIME: 2008-02-23 Sat 15:21 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela documentation/Strasheela tutorial :ARCHIVE_CATEGORY: Strasheela-TODO :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA :END: * DONE Contrasts_OneLevel as constraint :NA: CLOSED: [2008-03-01 Sat 18:30] :PROPERTIES: :ARCHIVE_TIME: 2008-03-01 Sat 18:30 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Morphology analysis constraints :ARCHIVE_CATEGORY: Strasheela-TODO :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA SOON :END: * DONE Write functor for whole numbers CLOSED: [2008-03-02 Sun 17:51] :PROPERTIES: :ARCHIVE_TIME: 2008-03-02 Sun 17:51 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Morphology analysis constraints/'whole FD numbers' (i.e. support of neg numbers) :ARCHIVE_CATEGORY: Strasheela-TODO :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA SOON :END: * Multi-core processing :PROPERTIES: :ARCHIVE_TIME: 2008-03-08 Sat 17:02 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design :ARCHIVE_CATEGORY: Strasheela-TODO :ARCHIVE_ITAGS: STRASHEELA :END: ** DONE Reread Oz distributed programming (van Roy) Play around with the possibilities: create multiple sites (on localhost simply for now) and communicate between them ** DONE Test: multiple Oz sides are independent processes on the computer That is: test whether multiple processes can run on different CPUs ** DONE Simple CSP with parallel search Check whether multiple CPUs are used ** DONE Simple Musical CSP with parallel search How does communication of data structure slow down the process? * DONE Oz Path :@NET:URGENT: CLOSED: [2008-03-10 Mon 21:40] :PROPERTIES: :ARCHIVE_TIME: 2008-03-10 Mon 21:40 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: General Oz todo :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: OZ :END: ** DONE svn update my mozart CLOSED: [2008-03-05 Wed 17:36] ** TODO Incorporate my changes (see my tmp Strasheela functor) into Mozart Path functor When finished commit these changes. Possibly, I do step-by-step commits -- but only if this does not complicate matters ** TODO Oz Path: test cases Decision: do simple solution: add a test file close to either Path source or its doc source Then report it on the Oz mailing list with request for improvement if necessary. Also, somewhere in source code (and doc??) put pointer to test file. ---- Thinking process: There is no test suite yet for the Mozart standard library Simple solution: add a test file close to either Path source or its doc source Better but much mroe complex solution: check how test suite is done for Mozart base system and do something similar. I probably need to specify test cases then with expected output -- how complex is that, as I don't know file system of computer on which test suite is run Problem: I must fully understand how test suite is run for base system Problem: should that be called automatically when certain tests are executed? Where is that called ** Update Path doc Edit the SGML files for Path functor (see comments in my tmp Strasheela functor) * DONE [#A] support IOzSeF solver :NEXT: CLOSED: [2008-03-12 Wed 18:33] :PROPERTIES: :ARCHIVE_TIME: 2008-03-12 Wed 18:33 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Efficiency :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA :END: http://www.mozart-oz.org/mogul/doc/tack/iozsef/iozsef.html ** DONE Add solver interfaces to SDistro CLOSED: [2008-03-12 Wed 18:32] already finished?? ** DONE Define score output for IOzSeF CLOSED: [2008-03-12 Wed 18:33] *** DONE Compare doc of Explorer and IOzSeF how info actions are defined CLOSED: [2008-03-12 Wed 18:33] with IOzSeF.addInformationAction(NameAtom root Action) Action is a unary procedure expecting root (i.e. score object) as arg see doc *** DONE Port Explorer info actions to IOzSeF CLOSED: [2008-03-12 Wed 18:33] Possibly generalise so that these actions are only defined once ... I figure that generalisation is easy * Define ConcurrentFind :PROPERTIES: :ARCHIVE_TIME: 2008-03-17 Mon 23:00 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Refactoring/Concurrent procedure/method filter (filterThreaded) which does return stream instead of list :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_ITAGS: STRASHEELA :END: see draft at [[file:~/oz/music/Strasheela/tmp.oz::proc%20ConcurrentFind%20Xs%20F%20Result][file:~/oz/music/Strasheela/tmp.oz::proc ConcurrentFind Xs F Result]] ** DONE Reply mail to raph and Jorge :URGENT: CLOSED: [2008-03-17 Mon 23:00] * DONE Synchronise Strasheela on MBP and Office Mac :URGENT: CLOSED: [2008-03-17 Mon 23:00] :PROPERTIES: :ARCHIVE_TIME: 2008-03-17 Mon 23:00 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Refactoring/Concurrent procedure/method filter (filterThreaded) which does return stream instead of list :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA :END: SVN commit changes on Office Mac, so I can update the MBP accordingly * DONE Read plain Filter definition: how can it be made into the concurrent version CLOSED: [2008-03-14 Fri 11:43] :PROPERTIES: :ARCHIVE_TIME: 2008-03-17 Mon 23:01 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Refactoring/Concurrent procedure/method filter (filterThreaded) which does return stream instead of list :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA :END: * DONE Define ConcurrentFilter as proc CLOSED: [2008-03-14 Fri 11:44] :PROPERTIES: :ARCHIVE_TIME: 2008-03-17 Mon 23:01 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Refactoring/Concurrent procedure/method filter (filterThreaded) which does return stream instead of list :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA :END: see LUtils.concurrentFilter * DONE Oz Path :@NET:URGENT: CLOSED: [2008-03-10 Mon 17:38] :PROPERTIES: :ARCHIVE_TIME: 2008-03-10 Mon 17:38 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: General Oz todo :ARCHIVE_CATEGORY: Strasheela-TODO :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: OZ :END: ** DONE svn update my mozart CLOSED: [2008-03-10 Mon 17:38] ** DONE Incorporate my changes (see my tmp Strasheela functor) into Mozart Path functor CLOSED: [2008-03-10 Mon 17:38] When finished commit these changes. Possibly, I do step-by-step commits -- but only if this does not complicate matters ** DONE Update Path doc CLOSED: [2008-03-10 Mon 17:38] Edit the SGML files for Path functor (see comments in my tmp Strasheela functor) ** DONE Oz Path: test cases CLOSED: [2008-03-10 Mon 17:38] Decision: do simple solution: add a test file close to either Path source or its doc source Then report it on the Oz mailing list with request for improvement if necessary. Also, somewhere in source code (and doc??) put pointer to test file. ---- Thinking process: There is no test suite yet for the Mozart standard library Simple solution: add a test file close to either Path source or its doc source Better but much mroe complex solution: check how test suite is done for Mozart base system and do something similar. I probably need to specify test cases then with expected output -- how complex is that, as I don't know file system of computer on which test suite is run Problem: I must fully understand how test suite is run for base system Problem: should that be called automatically when certain tests are executed? Where is that called * DONE Define ConcurrentFind CLOSED: [2008-03-17 Mon 12:48] :PROPERTIES: :ARCHIVE_TIME: 2008-03-17 Mon 12:49 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Refactoring/Concurrent procedure/method filter (filterThreaded) which does return stream instead of list :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA :END: see draft at [[file:~/oz/music/Strasheela/tmp.oz::proc%20ConcurrentFind%20Xs%20F%20Result][file:~/oz/music/Strasheela/tmp.oz::proc ConcurrentFind Xs F Result]] ** DONE Reply mail to raph and Jorge :URGENT: CLOSED: [2008-03-17 Mon 12:26] * DONE Read plain Filter definition: how can it be made into the concurrent version CLOSED: [2008-03-14 Fri 11:43] :PROPERTIES: :ARCHIVE_TIME: 2008-03-17 Mon 12:49 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Refactoring/Concurrent procedure/method filter (filterThreaded) which does return stream instead of list :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA :END: * DONE Define ConcurrentFilter as proc CLOSED: [2008-03-14 Fri 11:44] :PROPERTIES: :ARCHIVE_TIME: 2008-03-17 Mon 12:49 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Refactoring/Concurrent procedure/method filter (filterThreaded) which does return stream instead of list :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA :END: see LUtils.concurrentFilter * DONE Add solver interfaces to SDistro CLOSED: [2008-03-17 Mon 12:50] :PROPERTIES: :ARCHIVE_TIME: 2008-03-17 Mon 12:50 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Efficiency/support IOzSeF solver :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA NEXT :END: already finished?? * DONE Define score output for IOzSeF CLOSED: [2008-03-17 Mon 12:50] :PROPERTIES: :ARCHIVE_TIME: 2008-03-17 Mon 12:50 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Efficiency/support IOzSeF solver :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA NEXT :END: ** TODO Compare doc of Explorer and IOzSeF how info actions are defined with IOzSeF.addInformationAction(NameAtom root Action) Action is a unary procedure expecting root (i.e. score object) as arg see doc ** TODO Port Explorer info actions to IOzSeF Possibly generalise so that these actions are only defined once ... I figure that generalisation is easy * DONE Move ET31.score.chordsToScore to HS.score.chordsToScore CLOSED: [2008-04-08 Tue 17:15] :PROPERTIES: :ARCHIVE_TIME: 2008-04-08 Tue 17:15 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA :END: Check where I use ET31.score.chordsToScore and update it accordingly Examples: ET31.out, testfiles.. * DONE Add revised Fuxian Counterpoint example with scale degrees :NEXT: CLOSED: [2008-04-08 Tue 18:01] :PROPERTIES: :ARCHIVE_TIME: 2008-04-08 Tue 18:02 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela examples :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA :END: No much fuss: add to list of examples under name Fuxian-revised or something Mention in comment: example demonstrates use of scale degrees Add note/link to example HTML file in doc * DONE Proofread Strasheela tutorial before next release :NEXT: CLOSED: [2008-04-08 Tue 18:11] :PROPERTIES: :ARCHIVE_TIME: 2008-04-08 Tue 18:11 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela documentation/Strasheela tutorial :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA :END: ** DONE Checkout all sections marked TODO and edit them CLOSED: [2008-04-08 Tue 18:11] ** DONE Proofread whole Oz-part as printout CLOSED: [2008-04-08 Tue 18:11] * DONE Fix bug for Lily output of (container) offset times CLOSED: [2008-04-10 Thu 13:39] :PROPERTIES: :ARCHIVE_TIME: 2008-04-10 Thu 13:39 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela release :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: NEXT :END: offset time must be inserted within container, not simply put before it. Also, there should be a white space after a rest in Lily code. Replace OffsetToPauses def by a def returning lily rest VS. Every caller of OffsetToPauses then inserts this rest where it belongs. Container output calls ToLilypondAux (or ToLilypond ?) explicitly instead of OffsetToPauses. * DONE Lily usage examples CLOSED: [2008-04-10 Thu 13:40] :PROPERTIES: :ARCHIVE_TIME: 2008-04-10 Thu 13:40 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela release :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: NEXT :END: ** DONE Example for chord output CLOSED: [2008-04-09 Wed 20:48] ** DONE Example for single voice polyphony CLOSED: [2008-04-09 Wed 20:48] ** DONE Example creating staffs which last only for container duration CLOSED: [2008-04-10 Thu 13:39] * DONE ET22 example CLOSED: [2008-04-11 Fri 13:27] :PROPERTIES: :ARCHIVE_TIME: 2008-04-11 Fri 13:27 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela release :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :END: modify ET31 chord progression * DONE Create clause for multiple voices in single staff CLOSED: [2008-04-08 Tue 22:54] :PROPERTIES: :ARCHIVE_TIME: 2008-04-11 Fri 13:36 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Update Lilypond output :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA NEXT :END: Test for sim which contains only seq, which in turn contain only notes or lily chords If seqs in sim, and there are further higher-level containers, only notes and sims expressing chords (i.e. sim expresses muliple voices in single staff), and the seqs contain only notes (needed condition?), then separate multiple seqs with // as in << { a4 g2 f4~ f4 } \\ { r4 g4 f2 f4 } >> Note: having a slash too much at the end does not hurt.. http://lilypond.org/doc/v2.11/Documentation/user/lilypond-learning/Single-staff-polyphony#Single-staff-polyphony * DONE Check what OffsetToPauses does CLOSED: [2008-04-11 Fri 13:27] :PROPERTIES: :ARCHIVE_TIME: 2008-04-11 Fri 13:36 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Update Lilypond output :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA NEXT :END: SeqToLily and SimToLily claim that offsets are ignored, but they use function OffsetToPauses.. * DONE Update version tag to "2.10.0" CLOSED: [2008-04-06 Sun 20:58] :PROPERTIES: :ARCHIVE_TIME: 2008-04-11 Fri 13:36 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Update Lilypond output :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA NEXT :END: * DONE Remove OuterSimBound CLOSED: [2008-04-06 Sun 23:55] :PROPERTIES: :ARCHIVE_TIME: 2008-04-11 Fri 13:36 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Update Lilypond output :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA NEXT :END: * DONE Only outmost sequential container creates a staff CLOSED: [2008-04-06 Sun 23:30] :PROPERTIES: :ARCHIVE_TIME: 2008-04-11 Fri 13:36 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Update Lilypond output :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA NEXT :END: NB: Upmost sim container does _not_ always create staffs Revise: each top-level sequential creates a staff. Top-level here means a sequential container which has no direct or indirect temporal container which is a sequential container Use decide clef! ----- Note: in typical Lily-suitable score topology, a sim is top-level container and its items are seq containers corresponding to the instruments If top-level is a seq, then there is only a single staff. However, I can always explicitly create staffs in subcontainers (when then last for a short time only) * DONE Create clause for chords CLOSED: [2008-04-06 Sun 23:54] :PROPERTIES: :ARCHIVE_TIME: 2008-04-11 Fri 13:37 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Update Lilypond output :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA NEXT :END: do test: if sim and only notes of same start and end time are contained: then print chord (almost equivalent to single note in notation: only single stem, common ties etc) Remove corresponding code section in SimToLily * DONE Disable call of convert-ly CLOSED: [2008-04-06 Sun 21:00] :PROPERTIES: :ARCHIVE_TIME: 2008-04-11 Fri 13:37 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Update Lilypond output :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA NEXT :END: * DONE Old todo for Lilypond output CLOSED: [2008-04-11 Fri 13:37] :PROPERTIES: :ARCHIVE_TIME: 2008-04-11 Fri 13:37 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design/Update Lilypond output :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA NEXT :END: Lilypond export outputs only rather old version. Meanwhile, Lilypond handles nested scores (quasi sim/seq containers) better than old version, but behaviour of old version is pertained when using Lily's conversion script. So, I should update my Lily output to a more Lily syntax version ** TODO Create SVN branch ** Understand what format Strasheela presently outputs and compare with recent Lily doc *** TODO Decide for target Lilypond version There are presently only few Strasheela users, so I might ask/force them all to switch to the latest Lilypond development version. **** Ueberlegung Are there the syntax differences between Lily 2.10 (stable) and Lily 2.11 (development)? The output of convert-ly indicates that there have been changes in the syntax in version 2.11. > convert-ly -e out2-1.ly convert-ly (GNU LilyPond) 2.11.43 Processing `out2-1.ly'... Applying conversion: 2.5.0, 2.5.1, 2.5.2, 2.5.3, 2.5.12, 2.5.13, 2.5.17, 2.5.18, 2.5.21, 2.5.25, 2.6.0, 2.7.0, 2.7.1, 2.7.2, 2.7.4, 2.7.6, 2.7.10, 2.7.11, 2.7.12, 2.7.13, 2.7.14, 2.7.15, 2.7.22, 2.7.24, 2.7.28, 2.7.29, 2.7.30, 2.7.31, 2.7.32, 2.7.32, 2.7.36, 2.7.40, 2.9.4, 2.9.6, 2.9.9, 2.9.11, 2.9.13, 2.9.16, 2.9.19, 2.10.0, 2.11.2, 2.11.5, 2.11.6, 2.11.10, 2.11.11, 2.11.13, 2.11.15, 2.11.23, 2.11.35, 2.11.38 *** TODO Compare current Strasheela output and desired output - Create relatively complex nested Strasheela determined score: sim(seq(sim(note+)+)+) - Create one old format output with Out.outputLilypond and one new format output (using convert-ly -e on a copy of the output) - Simplify convert-ly output (Lilypond then reduces the number of staffs) -- but keep/enter explicit sim/seq nesting in Lily output - Compare orig Strasheela output and new format with diff - Adjust Strasheela lilypond output generation accordingly *** With the new version test the following cases **** Hierarchic nesting (sim and seq containers) **** Note object output **** ?? Chord output **** My extensions * DONE Complement existing general variable and value orderings for Strasheela :NEXT: :PROPERTIES: :ARCHIVE_TIME: 2008-04-21 Mon 18:20 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela design :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_ITAGS: STRASHEELA :END: strasheela source [[file:~/oz/music/Strasheela/strasheela/trunk/strasheela/source/ScoreDistribution.oz::order]] ** DONE Check literature for variable and value orderings CLOSED: [2008-04-21 Mon 18:19] van Beek in Constraint Handbook Bessiere and Regin article etc ** DONE Double-check Mozart source CLOSED: [2008-04-21 Mon 18:19] Mozart distro source [[file:~/oz/mozart/trunk/mozart/share/lib/cp/FD.oz::Generic%20only][file:~/oz/mozart/trunk/mozart/share/lib/cp/FD.oz::Generic only]] * DONE Pattern.useMotifs: CLOSED: [2008-05-04 Sun 22:20] :PROPERTIES: :ARCHIVE_TIME: 2008-05-04 Sun 22:20 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela Bugs :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :END: [[file:~/oz/music/Strasheela/strasheela/trunk/strasheela/contributions/anders/Pattern/Pattern.oz::proc%20UseMotifs%20Xs%20Motifs%20Args][file:~/oz/music/Strasheela/strasheela/trunk/strasheela/contributions/anders/Pattern/Pattern.oz::proc UseMotifs Xs Motifs Args]] BUGS: the elements in Motifs must exclude each other, that is no element in Motifs must be fully contained as the beginning in another element of Motifs. Otherwise UseMotif blocks internally and does not apply motif constraints anymore. This is a principle "problem" of or statement -- it does not search by itself, it blocks as long as multiple or-clauses are possible and does not force any decision. Possible solution: output a list of motif indices for each Xs (i.e. the same motif index value for each motif "note"). Then I can determine these values outside, e.g., via distribution .. * DONE Create decatonic test chord progression :NEXT: :PROPERTIES: :ARCHIVE_TIME: 2008-05-27 Tue 18:22 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela examples :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: TODO :ARCHIVE_ITAGS: STRASHEELA :END: Check chord progression CSPs I did for 31 ET, see [[file:~/oz/music/Strasheela/strasheela/trunk/strasheela/examples/HarmonicProgressions-31ET.oz]] and adapt them for 22 ET with decatonic scales Put into file [[file:~/oz/music/Strasheela/strasheela/trunk/strasheela/examples/HarmonicProgressions-22ET.oz]] ** Further ideas for rules - Only decatonic chords - Strong chord progressions (Schoenberg rule) - ?? Finish with cadence (needs def what cadence is) - ?? Constrain chord identity with morphology constraints to roughly follow "orgiastic curve" - ?? resolve dissonances - ?? control degree of dissonances (e.g., either only gradually increasing and decreasing of dissonance or use of dissonance where [betonung] is needed) - ?? 'harmonic motifs': short chord sequences which are repetitions of previous sequences but on different degree (possibly even extending tonality..) * DONE Test Strasheela installation on cluster fotcluster1.fot.plymouth.ac.uk :@OFFICE:URGENT: CLOSED: [2008-05-15 Thu 17:56] :PROPERTIES: :ARCHIVE_TIME: 2008-05-27 Tue 18:54 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela on Cluster :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :END: ** OLD On 26 Febr, I told Marc that we better wait for the upcoming Mozart release M.Flamank@plymouth.ac.uk *** Installation instruction I understood from Kurt that the cluster's operating system is based on Redhat, and that RPMs are preferred for an easy reinstallation of the cluster nodes. Mozart RPMs are available at http://www.mozart-oz.org/download/view.cgi?action=rpm&version=1.3.2 I assume we should use the source RPM package and compile it. We only need the core RPM (i.e., neither the GTK extensions nor documentation is needed): http://www.mozart-oz.org/download/mozart-ftp/store/ 1.3.2-2006-06-15-GENERIC-i386/mozart-1.3.2.20060615-4.src.rpm The compilation then happens with rpmbuild --rebuild mozart-1.3.2.20060615-4.src.rpm However, Mozart depends on the following libraries: gmp, GNU gdbm 1.8.3, and GNU regex 0.12. Additionally, Emacs is required. On Feb 26, 2008, at 1:57 PM, Marc Flamank wrote: Tried "rpmbuild -v --rebuild mozart-1.3.2.20060615-4.src.rpm" failed on gpm then on gdbm but worked once I got them into /usr/local. (The .h's were not installed!!) Even though it exits 0 there is no oz on the file system. Looking through the output the build seems to have done things in the source, in /var/tmp, in /usr/src/redhat/BUILD/ then deleted them without actually installing anything. Am I missing something? ----- rpmbuild will typically create binary RPMs in the usual system-specific location, e.g., a file mozart-1.3.2.20060615-4.i386.rpm in /usr/src/redhat/RPMS/i386. After the compilation finished, indeed nothing is installed. The resulting RPMs are then installed, e.g., by doing rpm -i mozart-$VERSION.$PLATFORM.rpm * DONE Create small-scale musical example which demonstrates the effect of LUtils.cFilter and LUtils.cFind :SOON: CLOSED: [2008-06-10 Tue 21:34] :PROPERTIES: :ARCHIVE_TIME: 2008-06-10 Tue 21:34 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela examples :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA :END: I instead defined getSimultaneousItems with these... ** TODO Sketch a small-scale music theory in plain English Idea: modulation example: scale(s) related to each chord (and chords related to each note) are found with LUtils.cFilter/LUtils.cFind. Alternative idea: map(filter(getAllNotes(myScore), isOnStrongBeat), f : f(n) := getPitchClass(n) \in getPitchClassSet(find(getChordProgression(myScore), g : g(c) := isSimultaneous(n, c)))) ** TODO Implement this theory see LUtils-test.oz for a LUtils.cFilter and LUtils.cFind test ** More Info NOTE: this matter could make it into a publication (part of a publication)! Related approach: find using filter + reified constraints as boolean tests is related but note the same. However, even if boolean test would return true for some datum already, find blocks if reified constraint blocks on some element before. This new approach works even when I don't know in which order variables are determined and thus in which order elements are added to the stream. Similar issue with filter: even with reified constraints as boolean tests, filter may block completely until enough information is available in all data. An concurrent filter would return data in a stream as soon as enough information is available on these data. Sufficient to have a filter which concurrently processes a list of objects. I only need to collect all data with collect (e.g., all data matching test function) and then do concurrent filter on this result list. A method filterThreaded would further improve the application of delayed constraints where filtering tests used reified constraints E.g., I could use a method filterThreaded for a better definition of getSimultaneousItems * DONE Brain-Computer interface example: homphonic chord progression :URGENT: DEADLINE: <2008-07-11 Fri> CLOSED: [2008-07-21 Mon 11:25] :PROPERTIES: :ARCHIVE_TIME: 2008-08-07 Thu 18:31 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela examples :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :ARCHIVE_ITAGS: STRASHEELA :END: [Example for/with Eduardo] Eduardo needs this example by 25th July ** DONE Describe CSP in English CLOSED: [2008-06-03 Tue 12:25] see [[file:~/oz/music/Strasheela/private/mitEduardo/BrainComputerInterfaceDemo.org::*Overview]] ** DONE Implement CSP in non-realtime CLOSED: [2008-06-10 Tue 21:34] see description at [[file:~/oz/music/Strasheela/private/mitEduardo/BrainComputerInterfaceDemo.org::*Overview]] Use existing definitions, e.g., [[file:~/oz/music/Strasheela/strasheela/trunk/strasheela/examples/HomophonicChordProgression.oz::declare]] *** DONE Implement cadence case CLOSED: [2008-06-06 Fri 16:13] *** DONE Implement non-key case CLOSED: [2008-06-06 Fri 16:13] ** DONE Implement in non-realtime CLOSED: [2008-06-06 Fri 16:13] ** DONE Implement output to SuperCollider (via OSC) CLOSED: [2008-06-10 Tue 21:34] ** DONE Implement output to MIDI (via SC) CLOSED: [2008-07-21 Mon 11:25] ** Explain how this application works in English * DONE Get Strasheela working with new Mozart 1.4.0 :PROPERTIES: :ARCHIVE_TIME: 2008-09-10 Wed 20:09 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela release :ARCHIVE_CATEGORY: Strasheela :END: ** DONE Install Mozart 1.4.0 CLOSED: [2008-08-18 Mon 22:11] Install as App on Mac, then you can switch between old and new installation by vars in ~/.profile I also need to comment out all Oz-related stuff in ~/.emacs to use the 1.4.0 App ** DONE Test Strasheela with new Mozart version CLOSED: [2008-08-18 Mon 22:11] ** DONE Verify changes to compiler interfaces CLOSED: [2008-08-19 Tue 17:02] *** DONE check Out: does Out.loadScore still work? CLOSED: [2008-08-19 Tue 17:00] *** DONE check Tutorial CLOSED: [2008-08-19 Tue 16:55] *** DONE ?? check OzServer -- is there an easy to do example? CLOSED: [2008-08-19 Tue 17:02] ** DONE Test parallel search CLOSED: [2008-08-19 Tue 17:06] ** TODO Release next version * DONE Finish Example: Midi-output.oz :PROPERTIES: :ARCHIVE_TIME: 2008-11-28 Fri 14:15 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela release :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: TODO :END: * DONE Finish Example: Midi-output.oz CLOSED: [2008-11-27 Thu 18:13] :PROPERTIES: :ARCHIVE_TIME: 2008-11-27 Thu 18:13 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela release :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :END: [[file:~/oz/music/Strasheela/strasheela/trunk/strasheela/examples/ControllingOutput-Examples/MIDI-output.oz]] see TODOs marked in file * DONE Clean up list of changes :PROPERTIES: :ARCHIVE_TIME: 2008-11-28 Fri 14:15 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela release :ARCHIVE_CATEGORY: Strasheela :END: * DONE Backup Strasheela SVN repository on Office Mac CLOSED: [2008-12-09 Tue 17:35] :PROPERTIES: :ARCHIVE_TIME: 2008-12-09 Tue 17:35 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :END: Does not work behind Uni firewall, but from homw see [[file:~/oz/music/Strasheela/sourceforge-howto/backup-howto.muse::Backup%20of%20the%20SVN%20repository][file:~/oz/music/Strasheela/sourceforge-howto/backup-howto.muse::Backup of the SVN repository]] This seems never to work. Could uni firewall be problem? - http://samba.anu.edu.au/rsync/FAQ.html#6 - http://samba.anu.edu.au/rsync/firewall.html cd /Volumes/Data/Backup/Strasheela-SVN-repository rsync -av strasheela.svn.sourceforge.net::svn/strasheela/* . rsync: failed to connect to strasheela.svn.sourceforge.net: Operation timed out (60) rsync error: error in socket IO (code 10) at /SourceCache/rsync/rsync-24.1/rsync/clientserver.c(94) * DONE Bug: Archiving score (e.g., with Out.saveScore) with strings: double quotes of strings are lost CLOSED: [2009-01-13 Tue 11:17] :PROPERTIES: :ARCHIVE_TIME: 2009-01-13 Tue 11:18 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela Bugs :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :END: declare MyScore = {Score.makeScore note(info:"test") unit} {Out.saveScore MyScore unit} % then check output test file.. * DONE Release :URGENT: CLOSED: [2009-03-10 Tue 11:21] :PROPERTIES: :ARCHIVE_TIME: 2009-03-23 Mon 15:11 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela release :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :END: ** Briefly document Schoenberg harmony example ** Clean up Changes.muse ** Release + testing * DONE Remove IOzSeF from Strasheela core :URGENT: CLOSED: [2009-03-27 Fri 13:44] :PROPERTIES: :ARCHIVE_TIME: 2009-03-27 Fri 13:44 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela release :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :END: How?? * DONE Strasheela automatic SVN repository backup CLOSED: [2009-08-05 Wed 14:38] :PROPERTIES: :ARCHIVE_TIME: 2009-08-05 Wed 14:38 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :END: see file:~/oz/music/Strasheela/sourceforge-howto/backup-howto.org * Repair adaptive JI :PROPERTIES: :ARCHIVE_TIME: 2010-03-04 Thu 18:42 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela Bugs :ARCHIVE_CATEGORY: Strasheela :END: see [[file:~/oz/music/Strasheela/strasheela/trunk/strasheela/contributions/anders/HarmonisedScore/testing/Score-test.oz::GetAdaptiveJIPitch]] # ?? did I somewhere replace root by transposition? # see 22 ET example.. Some bug in computing the octave * DONE Ask Oz mailing list: can we feed expressions to OPI and get result back from Emacs Lisp? CLOSED: [2010-03-04 Thu 11:16] :PROPERTIES: :ARCHIVE_TIME: 2010-04-26 Mon 00:08 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela doc :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :END: * DONE Add org-babel-oz.el to Org-babel CLOSED: [2010-03-04 Thu 11:16] :PROPERTIES: :ARCHIVE_TIME: 2010-04-26 Mon 00:08 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela doc :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :END: * DONE Write doc for org-babel-oz.el CLOSED: [2010-03-04 Thu 11:16] :PROPERTIES: :ARCHIVE_TIME: 2010-04-26 Mon 00:08 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela doc :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :END: for draft see [[file:~/oz/music/Strasheela/StrasheelaDoc_Rewrite/setup/org-babel-oz-doc.org]] ** Grab a copy of worg see http://orgmode.org/worg/worg-git.php ** Write file file:~/emacs/org-mode/Worg/org-contrib/babel/org-babel-oz.org Suggestions: http://orgmode.org/worg/worg-editing.php "Templates" file:~/emacs/org-mode/Worg/org-contrib/babel/org-babel-screen.org file:~/emacs/org-mode/Worg/org-contrib/babel/org-babel.org ** Push this file with git Learn how to do git push, see http://orgmode.org/worg/worg-git.php *** First time cd ~/emacs/org-mode/Worg/org-contrib/babel/ git add org-babel-oz.org git commit -a -m "My changelog" git push PERHAPS: if push does not work as above git remote add public git+ssh://tanders@repo.or.cz/srv/git/Worg.git git push public Use your ssh passphrase (if requested again): bach1685 *** Later cd ~/emacs/org-mode/Worg/ git commit -a -m "My ChangeLog" git push * DONE Inform Oz community about org-babel-oz CLOSED: [2010-04-26 Mon 00:07] :PROPERTIES: :ARCHIVE_TIME: 2010-04-26 Mon 00:08 :ARCHIVE_FILE: ~/oz/music/Strasheela/strasheela/trunk/strasheela/others/TODO/Strasheela-TODO.org :ARCHIVE_OLPATH: Strasheela doc :ARCHIVE_CATEGORY: Strasheela :ARCHIVE_TODO: DONE :END: