PTC and "SHOULD" vs "MUST"
# Brendan Eich (14 years ago)
Thanks for catching this, it goes back to doku.php?id=strawman:proper_tail_calls&rev=1273414092 (first rev). Cc'ing Mark. I bet it is just a thinko for MUST and we can fix it quickly.
Thanks for catching this, it goes back to http://wiki.ecmascript.org/doku.php?id=strawman:proper_tail_calls&rev=1273414092 (first rev). Cc'ing Mark. I bet it is just a thinko for MUST and we can fix it quickly. /be On Jun 1, 2011, at 3:36 PM, Peter Michaux wrote: > http://wiki.ecmascript.org/doku.php?id=harmony:proper_tail_calls > > I notice that in the proper tail calls wiki page that a compliant > interpreter "SHOULD implement a call in proper tail position as a > PTC." In order for a programmer to use proper tail calls for > arbitrarily deep recursion, the programmer needs a guarantee that the > interpreter will use proper tail calls. This would mean the "SHOULD" > needs to be a "MUST". Otherwise what does the proper tail calls > proposal gain the programmer? > > For example, R5RS has much stronger language compared with "SHOULD" > about Scheme using proper tail calls. > > "Implementations of Scheme are required to be properly tail recursive." > > With that language the programmer using Scheme can then depend on that feature. > > Peter > _______________________________________________ > es-discuss mailing list > es-discuss at mozilla.org > https://mail.mozilla.org/listinfo/es-discuss
# David Herman (14 years ago)
Agreed. Should be "must."
Agreed. Should be "must." Dave On Jun 1, 2011, at 3:42 PM, Brendan Eich wrote: > Thanks for catching this, it goes back to http://wiki.ecmascript.org/doku.php?id=strawman:proper_tail_calls&rev=1273414092 (first rev). Cc'ing Mark. I bet it is just a thinko for MUST and we can fix it quickly. > > /be > > On Jun 1, 2011, at 3:36 PM, Peter Michaux wrote: > >> http://wiki.ecmascript.org/doku.php?id=harmony:proper_tail_calls >> >> I notice that in the proper tail calls wiki page that a compliant >> interpreter "SHOULD implement a call in proper tail position as a >> PTC." In order for a programmer to use proper tail calls for >> arbitrarily deep recursion, the programmer needs a guarantee that the >> interpreter will use proper tail calls. This would mean the "SHOULD" >> needs to be a "MUST". Otherwise what does the proper tail calls >> proposal gain the programmer? >> >> For example, R5RS has much stronger language compared with "SHOULD" >> about Scheme using proper tail calls. >> >> "Implementations of Scheme are required to be properly tail recursive." >> >> With that language the programmer using Scheme can then depend on that feature. >> >> Peter >> _______________________________________________ >> es-discuss mailing list >> es-discuss at mozilla.org >> https://mail.mozilla.org/listinfo/es-discuss > > _______________________________________________ > es-discuss mailing list > es-discuss at mozilla.org > https://mail.mozilla.org/listinfo/es-discuss
# Mark S. Miller (14 years ago)
It wasn't just a thinko, but I'm actually happier with MUST. Fixed.
It wasn't just a thinko, but I'm actually happier with MUST. Fixed. On Wed, Jun 1, 2011 at 3:42 PM, Brendan Eich <brendan at mozilla.com> wrote: > Thanks for catching this, it goes back to > http://wiki.ecmascript.org/doku.php?id=strawman:proper_tail_calls&rev=1273414092(first rev). Cc'ing Mark. I bet it is just a thinko for MUST and we can fix > it quickly. > > /be > > On Jun 1, 2011, at 3:36 PM, Peter Michaux wrote: > > > http://wiki.ecmascript.org/doku.php?id=harmony:proper_tail_calls > > > > I notice that in the proper tail calls wiki page that a compliant > > interpreter "SHOULD implement a call in proper tail position as a > > PTC." In order for a programmer to use proper tail calls for > > arbitrarily deep recursion, the programmer needs a guarantee that the > > interpreter will use proper tail calls. This would mean the "SHOULD" > > needs to be a "MUST". Otherwise what does the proper tail calls > > proposal gain the programmer? > > > > For example, R5RS has much stronger language compared with "SHOULD" > > about Scheme using proper tail calls. > > > > "Implementations of Scheme are required to be properly tail recursive." > > > > With that language the programmer using Scheme can then depend on that > feature. > > > > Peter > > _______________________________________________ > > es-discuss mailing list > > es-discuss at mozilla.org > > https://mail.mozilla.org/listinfo/es-discuss > > -- Cheers, --MarkM -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20110602/3f0f4398/attachment-0001.html>
harmony:proper_tail_calls
I notice that in the proper tail calls wiki page that a compliant interpreter "SHOULD implement a call in proper tail position as a PTC." In order for a programmer to use proper tail calls for arbitrarily deep recursion, the programmer needs a guarantee that the interpreter will use proper tail calls. This would mean the "SHOULD" needs to be a "MUST". Otherwise what does the proper tail calls proposal gain the programmer?
For example, R5RS has much stronger language compared with "SHOULD" about Scheme using proper tail calls.
"Implementations of Scheme are required to be properly tail recursive."
With that language the programmer using Scheme can then depend on that feature.
Peter