Para desarrollar esta feature, me basé en el refactor en #126
Agrego la función list_splice, emulando el comportamiento de Array splice en JS:
/**
* @NAME: list_splice
* @DESC: Retorna una nueva lista con los
* primeros n elementos partiendo desde el
* índice indicado, eliminando del origen
* estos elementos
*/
Y también cambio la firma de list_take_and_remove, la renombro como list_drop y hago que sea como un list_splice más específico, además de que tiene un comportamiento determinado si recibe un valor negativo:
/**
* @NAME: list_drop
* @DESC: Retorna una nueva lista con los primeros n elementos, eliminando
* del origen estos elementos. Si n es negativo, retorna y elimina todos
* excepto los -n últimos.
*/
Si bien drop en Haskell sería como un "take, remove and destroy", creo que el cambio de nombre suena mejor. Díganme si lo prefieren así y sino lo vuelvo atrás a como estaba.
Para desarrollar esta feature, me basé en el refactor en #126
Agrego la función
list_splice
, emulando el comportamiento de Array splice en JS:Y también cambio la firma de
list_take_and_remove
, la renombro comolist_drop
y hago que sea como unlist_splice
más específico, además de que tiene un comportamiento determinado si recibe un valor negativo:Si bien drop en Haskell sería como un "take, remove and destroy", creo que el cambio de nombre suena mejor. Díganme si lo prefieren así y sino lo vuelvo atrás a como estaba.