$spacing-directions: '', 'Top', 'Left', 'Right', 'Bottom';
$spacing-directions-css: '', '-top', '-left', '-right', '-bottom';
$spacing-names: 'None', 'ExtraTight', 'Tight', 'Base', 'Loose', 'ExtraLoose';
$spacing-amounts: spacing(none), spacing(extra-tight), spacing(tight), spacing(base), spacing(loose), spacing(extra-loose);

@for $i from 1 through length($spacing-directions-css) {
  @for $j from 1 through length($spacing-names) {
    .margin#{nth($spacing-directions, $i)}#{nth($spacing-names, $j)} {
      margin#{nth($spacing-directions-css, $i)}: #{nth($spacing-amounts, $j)} !important;
    }
    .padding#{nth($spacing-directions, $i)}#{nth($spacing-names, $j)} {
      padding#{nth($spacing-directions-css, $i)}: #{nth($spacing-amounts, $j)} !important;
    }
  }
}

// Results in:

// .Polaris-Spacing--paddingNone {
//   padding: spacing(none);
// }

// .Polaris-Spacing--paddingLeftExtraTight {
//   padding-left: spacing(extra-tight);
// }

// .Polaris-Spacing--marginTopLoose {
//   margin-top: spacing(loose);
// }