diff --git a/slapos/recipe/request.py b/slapos/recipe/request.py
index bd30fc3837463c2bf89c4214a6ce7f1a5df117fb..51ecf900d26d226044bc17e1c5de1144a5febef5 100644
--- a/slapos/recipe/request.py
+++ b/slapos/recipe/request.py
@@ -102,38 +102,27 @@ class Recipe(object):
     request = slap.registerComputerPartition(
       options['computer-id'], options['partition-id']).request
 
-    return_parameters = []
-    if 'return' in options:
-      return_parameters = [str(parameter).strip()
-                          for parameter in options['return'].split()]
-    else:
+    return_parameters = options.get('return', '').split()
+    if not return_parameters:
       self.logger.debug("No parameter to return to main instance."
         "Be careful about that...")
-
     software_type = options.get('software-type', DEFAULT_SOFTWARE_TYPE)
-
-    filter_kw = {}
-    if 'sla' in options:
-      for sla_parameter in options['sla'].split():
-        filter_kw[sla_parameter] = options['sla-%s' % sla_parameter]
-
-    partition_parameter_kw = {}
-    if 'config' in options:
-      for config_parameter in options['config'].split():
-        partition_parameter_kw[config_parameter] = \
-            options['config-%s' % config_parameter]
-    partition_parameter_kw = self._filterForStorage(partition_parameter_kw)
-
-    isSlave = options.get('slave', '').lower() in \
-        librecipe.GenericBaseRecipe.TRUE_VALUES
-
+    filter_kw = dict(
+      (x, options['sla-' + x]) for x in options.get('sla', '').split()
+    )
+    partition_parameter_kw = self._filterForStorage(dict(
+      (x, options['config-' + x])
+      for x in options.get('config', '').split()
+    ))
+    slave = options.get('slave', 'false').lower() in \
+      librecipe.GenericBaseRecipe.TRUE_VALUES
     self._raise_request_exception = None
     self._raise_request_exception_formatted = None
     self.instance = None
     try:
       self.instance = request(software_url, software_type,
           name, partition_parameter_kw=partition_parameter_kw,
-          filter_kw=filter_kw, shared=isSlave)
+          filter_kw=filter_kw, shared=slave)
       return_parameter_dict = self._getReturnParameterDict(self.instance,
           return_parameters)
       # XXX what is the right way to get a global id?