diff --git a/form/form.py b/form/form.py
index <HASH>..<HASH> 100644
--- a/form/form.py
+++ b/form/form.py
@@ -264,7 +264,7 @@ class FormLink(object):
         preprocessor variables ("`VAR'"). Note that the communication from FORM
         is done in the preprocessor of FORM (i.e., at compile-time), so one may
         need to write ".sort" to get the correct result. The return value is
-        a string, or a tuple of strings when multiple names are passed.
+        a string, or a list of strings when multiple names are passed.
         """
         if self._closed:
             raise IOError('tried to read from closed connection')
@@ -319,7 +319,7 @@ class FormLink(object):
         elif len(names) == 1:
             return result[0]
         else:
-            return tuple(result)
+            return result
 
     @property
     def closed(self):
diff --git a/form/tests/test_form.py b/form/tests/test_form.py
index <HASH>..<HASH> 100644
--- a/form/tests/test_form.py
+++ b/form/tests/test_form.py
@@ -37,7 +37,7 @@ class FormTestCase(unittest.TestCase):
             ''')
             str_FF = f.read('F1', 'F2')
 
-        self.assertEqual(str_FF, ('1+2*x+x^2', '1-2*x+x^2'))
+        self.assertEqual(str_FF, ['1+2*x+x^2', '1-2*x+x^2'])
 
     def test_old_style(self):
         f = form.open()
Change FormLink.read() to return a list for multiple results