Skip to main content

sortbykeys

sortbykeys(
@llll ## llll (required)
@keys ## list/symbol (required)
) -> llll

Sorts llll elements by a given set of keys. It assumes all keys are associated with single, quantifiable values.


Arguments

  • @llll [llll]: List to sort. (required)
  • @keys [list/symbol]: One or more keys to sort list by. (required)

Output

List of sorted items [llll]


Usage

$bufs = for $i in 1...50 collect cycle(@frequency rand(20, 2000) @duration choose(50 200));
$sorted = sortbykeys($bufs, 'duration' 'pitch');
$t = 0;
for $b in $sorted do (
$b.transcribe($t @gain 0.1);
$t += $b.getkey('duration')
);
render(@play 1)