November 17, 20178 yr hi all is there a possibility to SAVE my output - the OMN-lists - (rnd-generated structures) in a seperate file? that by EVALUATION the OMN-lists will be written in a sepeart/new-generated file? ...so that i have not to re-import it via MIDI (makes a lot of strange rhythms) thanks for help andré
November 17, 20178 yr Randomly created data can be recreated if you fix a seed. It is very handy that Opusmodus supports setting a seed for all its randomised functions (in contrast to pretty much all other composition systems). You can initialise the seed with init-seed. See also This feature probably makes it unnecessary for you to save/read files. If you still want to write to and read from text files, the Common Lisp macro with-open-file is your friend. For more details see the following links Textbook http://www.gigamonkeys.com/book/files-and-file-io.html Cookbook with examples http://cl-cookbook.sourceforge.net/files.html Language reference http://clhs.lisp.se/Body/m_w_open.htm Best, Torsten
November 17, 20178 yr Author thank you, torsten - the problem is, that i'm working with my own random/pick-functions which don't work with SEED - so, that's my fault/problem 🙂
November 17, 20178 yr Somewhere on this forum, there is an example from Janusz on how to implement the seed in you own function... S.
November 17, 20178 yr You can find how to use the RND-SEED in the documentation. You need to explore bit more the system 🙂 Function example using RND-SEED function: (defun rnd-number* (n low high &key seed) (do-verbose ("rnd-number*") (rnd-seed seed) (if (zerop n) nil (cons (round (+ low (rnd-round 0 (- high low) :seed (seed)))) (rnd-number* (decf n) low high :seed (seed)))))) Each time we evaluate the expression we get a different result. (rnd-number* 12 0 5) => (0 3 2 5 3 3 4 3 2 2 4 4) Adding seed to the expression will produce always the same result. (rnd-number* 12 0 5 :seed 45) => (2 2 5 4 5 0 5 3 5 3 1 1) If you need more help please let me know.
November 17, 20178 yr Author yes, i know - i love to code a lot of things myself, and at the moment i'm not very virtuous in it. but I have found a solution - without rebuilding my big programs. with (pprint-last-score) i can read and save the OMN, after evaluating and exporting xml/midi. so you were right, janusz, the solution was in the SYSTEM FUNCTIONS 🙂 thanx for help - torsten, stéphane & janusz
Create an account or sign in to comment