Quoted By:
I made a function in lisp called partial bind which takes a function f a list of indexes and a list of arguments and then returns a partial function with the arguments bound to the indexes. It basically does this (this isn't in lisp notation because it is more understandable to people not used to it):
given a function foo(a,b,c,d)
partial-bind(foo,[1,3],[8,12]) -> foo(8,b,12,d)
and I found out that I could use it to rearrange a list with
((partial-bind list indexes list-to-shuffle))