code: def widgets_from_abbreviations(self, seq):
          
          result = []
          for name, abbrev, default in seq:
              widget = self.widget_from_abbrev(abbrev, default)
              if not (isinstance(widget, ValueWidget) or isinstance(widget, fixed)):
                  if widget is None:
                      raise ValueError("{!r} cannot be transformed to a widget".format(abbrev))
                  else:
                      raise TypeError("{!r} is not a ValueWidget".format(widget))
              if not widget.description:
                  widget.description = name
              widget._kwarg = name
              result.append(widget)
          return result
docs: Given a sequence of (name, abbrev, default) tuples, return a sequence of Widgets.