alda-lang / alda

A music programming language for musicians. :notes:
https://alda.io
Eclipse Public License 2.0
5.61k stars 288 forks source link

`c0` causes a note to play forever, is it working as intended? #398

Closed xcoderreal closed 3 years ago

xcoderreal commented 3 years ago

🐞 Bug report 🐞

Description

c0 causes a note to play forever

Steps to Reproduce

piano: c4 c4 c0

Yes

Expected Behavior

Seems like it should have been an error or forbidden?

(I haven't dug into the code but instead just skimmed through the Notes documentation.)

Actual Behavior

Environment

Operating system and version:

Alda version:

$ alda version
alda 2.0.5
$ alda-player info
alda-player 2.0.5
log path: [skipped here]

Health check:

$ alda doctor
OK  Parse source code
OK  Generate score model
OK  Ensure that there are no stale player processes
OK  Find an open port
OK  Send and receive OSC messages
OK  Locate alda-player executable on PATH
OK  Check alda-player version
OK  Spawn a player process
OK  Ping player process
OK  Play score
OK  Export score as MIDI
OK  Locate player logs
OK  Player logs show the ping was received
OK  Shut down player process
OK  Spawn a player on an unknown port
OK  Discover the player
OK  Ping the player
OK  Shut the player down
OK  Start a REPL server
nREPL server started on port 51860 on host localhost - nrepl://localhost:51860
OK  Find the REPL server
OK  Interact with the REPL server
OK  Shut down the REPL server

Logs:

daveyarwood commented 3 years ago

@xcoderreal Thanks for the issue! You have a good point. I think a note length of 0 should probably be treated as an error. I'll leave this open for a while in case anyone else has any thoughts they'd like to share, but if there are no objections, I think I will make it so that e.g. c0 results in an error.

daveyarwood commented 3 years ago

Fixed in Alda 2.0.6 :tada: