diff --git a/lib/util/Symbol.js b/lib/util/Symbol.js
new file mode 100644
index 0000000..2b6aa6d
--- /dev/null
+++ b/lib/util/Symbol.js
@@ -0,0 +1,31 @@
+/**
+ * Forward-compatible subset of ES6 Symbol
+ *
+ * Copyright (C) 2014 Free Software Foundation, Inc.
+ *
+ * This file is part of GNU ease.js.
+ *
+ * ease.js is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ *
+ * This is *not* intended to be a complete implementation; it merely
+ * performs what is needed for ease.js, preferring the benefits of the ES6
+ * Symbol implementation while falling back to sane ES5 and ES3 options.
+ */
+
+// to be used if there is no global Symbol available
+var FallbackSymbol = require( './symbol/FallbackSymbol' );
+
+var _root = require( './Global' ).expose();
+module.exports = _root.Symbol || FallbackSymbol;
+
diff --git a/test/Util/SymbolTest.js b/test/Util/SymbolTest.js
new file mode 100644
index 0000000..3748240
--- /dev/null
+++ b/test/Util/SymbolTest.js
@@ -0,0 +1,43 @@
+/**
+ * Tests symbol subset
+ *
+ * Copyright (C) 2014 Free Software Foundation, Inc.
+ *
+ * This file is part of GNU ease.js.
+ *
+ * ease.js is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ *
+ * N.B. Despite this saying that it tests the index (i.e. entry point), this
+ * is not yet the case; it will be in the future, though.
+ */
+
+
+require( 'common' ).testCase(
+{
+ caseSetUp: function()
+ {
+ this.Sut = this.require( 'util/Symbol' );
+ },
+
+
+ /**
+ * We don't care about the details of this; just make sure that we fail
+ * in an environment that seems to confuse us.
+ */
+ 'Exports a function': function()
+ {
+ this.assertOk( typeof this.Sut === 'function' );
+ },
+} );
+