On Thursday 07 July 2016 17:30:03 Richard W.M. Jones wrote:
This adds imperative list manipulation functions inspired by Perl.
The functions are passed list refs which get updated in place.
This allows us to replace some awkward pure functional code like:
let xs = ys in
let xs = if foo then xs @ zs else xs in
with:
let xs = ref ys in
if foo then append xs zs;
---
TBH I've always found the "shift" and "unshift" naming of Perl
functions slightly awkward, but can live with them. (At least the
new functions do the same as Perl ones.)
--
Pino Toscano