For the record, all Sonic Pi’s synths (triggered via
play) are finite in duration.
This was a specific design decision taken to make the use of the synths simple and not require any knowledge of gates, triggers and variables.
This may change in the future, but for now, the best way to achieve the kind of thing you’re talking about is to use a long sustain as @Martin has suggested along with the
control fn which can allow you to modify a running synth:
s = play 70, sustain: 1000, amp_slide: 1
control s, amp: 0
For more information about
control and the
*_slide: opts please see section 7 of the built-in tutorial