diff --git a/lib/modules/Array.pmod b/lib/modules/Array.pmod
index 4acd5211d65d383288034dfa0cd7be3dbe9b3090..46a7f1c220fdfec42aa0862759a1db1062fcbced 100644
--- a/lib/modules/Array.pmod
+++ b/lib/modules/Array.pmod
@@ -166,3 +166,9 @@ array uniq(array a)
   return indices(mkmapping(a,a));
 }
 
+array columns(array x, array ind)
+{
+  array ret=allocate(sizeof(ind));
+  for(int e=0;e<sizeof(ind);e++) ret[e]=column(x,ind[e]);
+  return ret;
+}