diff --git a/project/msvc2013/wren/wren.vcxproj b/project/msvc2013/wren/wren.vcxproj
index 40e8cb95..a264f553 100644
--- a/project/msvc2013/wren/wren.vcxproj
+++ b/project/msvc2013/wren/wren.vcxproj
@@ -83,7 +83,6 @@
-
@@ -95,7 +94,6 @@
-
diff --git a/project/msvc2013/wren/wren.vcxproj.filters b/project/msvc2013/wren/wren.vcxproj.filters
index 78188b83..571da9be 100644
--- a/project/msvc2013/wren/wren.vcxproj.filters
+++ b/project/msvc2013/wren/wren.vcxproj.filters
@@ -39,9 +39,6 @@
Source Files
-
- Source Files
-
@@ -71,8 +68,5 @@
Header Files
-
- Header Files
-
\ No newline at end of file
diff --git a/src/wren_common.h b/src/wren_common.h
index e3225a1c..747c01bb 100644
--- a/src/wren_common.h
+++ b/src/wren_common.h
@@ -44,13 +44,6 @@
#define WREN_USE_LIB_IO 1
#endif
-// If true, loads the "Math" class in the standard library.
-//
-// Defaults to on.
-#ifndef WREN_USE_LIB_MATH
-#define WREN_USE_LIB_MATH 1
-#endif
-
// These flags are useful for debugging and hacking on Wren itself. They are not
// intended to be used for production code. They default to off.
diff --git a/src/wren_math.c b/src/wren_math.c
deleted file mode 100644
index ce52c2be..00000000
--- a/src/wren_math.c
+++ /dev/null
@@ -1,116 +0,0 @@
-#include "wren_common.h"
-#include "wren_math.h"
-
-#if WREN_USE_LIB_MATH
-
-#include
-#include
-#include
-
-static int32_t _seed = 0x5752454e; // WREN :)
-
-static void mathAbs(WrenVM* vm)
-{
- double value = wrenGetArgumentDouble(vm, 1);
- double result = fabs(value);
- wrenReturnDouble(vm, result);
-}
-
-static void mathCeil(WrenVM* vm)
-{
- double value = wrenGetArgumentDouble(vm, 1);
- double result = ceil(value);
- wrenReturnDouble(vm, result);
-}
-
-static void mathFloor(WrenVM* vm)
-{
- double value = wrenGetArgumentDouble(vm, 1);
- double result = floor(value);
- wrenReturnDouble(vm, result);
-}
-
-static void mathInt(WrenVM* vm)
-{
- double value = wrenGetArgumentDouble(vm, 1);
- double integer;
- double fractional = modf(value, &integer);
- wrenReturnDouble(vm, integer);
-}
-
-static void mathFrac(WrenVM* vm)
-{
- double value = wrenGetArgumentDouble(vm, 1);
- double integer;
- double fractional = modf(value, &integer);
- wrenReturnDouble(vm, fractional);
-}
-
-static void mathSin(WrenVM* vm)
-{
- double angle = wrenGetArgumentDouble(vm, 1);
- double sine = sin(angle);
- wrenReturnDouble(vm, sine);
-}
-
-static void mathCos(WrenVM* vm)
-{
- double angle = wrenGetArgumentDouble(vm, 1);
- double cosine = cos(angle);
- wrenReturnDouble(vm, cosine);
-}
-
-static void mathTan(WrenVM* vm)
-{
- double angle = wrenGetArgumentDouble(vm, 1);
- double tangent = tan(angle);
- wrenReturnDouble(vm, tangent);
-}
-
-static void mathDeg(WrenVM* vm)
-{
- double radians = wrenGetArgumentDouble(vm, 1);
- double degrees = floor(radians * 57.2957795130823208768);
- wrenReturnDouble(vm, degrees);
-}
-
-static void mathRad(WrenVM* vm)
-{
- double degrees = wrenGetArgumentDouble(vm, 1);
- double radians = floor(degrees / 57.2957795130823208768);
- wrenReturnDouble(vm, radians);
-}
-
-static void mathSrand(WrenVM* vm)
-{
- time_t now = time(NULL);
- _seed = (int32_t)now;
- wrenReturnNull(vm);
-}
-
-static void mathRand(WrenVM* vm)
-{
- // https://software.intel.com/en-us/articles/fast-random-number-generator-on-the-intel-pentiumr-4-processor/
- _seed = (214013 * _seed + 2531011);
- int16_t value = (_seed >> 16) & 0x7FFF;
- double result = (double)value / (double)(INT16_MAX - 1);
- wrenReturnDouble(vm, result);
-}
-
-void wrenLoadMathLibrary(WrenVM* vm)
-{
- wrenDefineStaticMethod(vm, "Math", "abs", 1, mathAbs);
- wrenDefineStaticMethod(vm, "Math", "ceil", 1, mathCeil);
- wrenDefineStaticMethod(vm, "Math", "floor", 1, mathFloor);
- wrenDefineStaticMethod(vm, "Math", "int", 1, mathInt);
- wrenDefineStaticMethod(vm, "Math", "frac", 1, mathFrac);
- wrenDefineStaticMethod(vm, "Math", "sin", 1, mathSin);
- wrenDefineStaticMethod(vm, "Math", "cos", 1, mathCos);
- wrenDefineStaticMethod(vm, "Math", "tan", 1, mathTan);
- wrenDefineStaticMethod(vm, "Math", "deg", 1, mathDeg);
- wrenDefineStaticMethod(vm, "Math", "rad", 1, mathRad);
- wrenDefineStaticMethod(vm, "Math", "srand", 0, mathSrand);
- wrenDefineStaticMethod(vm, "Math", "rand", 0, mathRand);
-}
-
-#endif
diff --git a/src/wren_math.h b/src/wren_math.h
deleted file mode 100644
index 7f90942e..00000000
--- a/src/wren_math.h
+++ /dev/null
@@ -1,15 +0,0 @@
-#ifndef wren_math_h
-#define wren_math_h
-
-#include "wren.h"
-#include "wren_common.h"
-
-// This module defines the Ramdp, class and its associated methods. The RNG is
-// based upon "xorshift".
-#if WREN_USE_LIB_MATH
-
-void wrenLoadMathLibrary(WrenVM* vm);
-
-#endif
-
-#endif
diff --git a/src/wren_vm.c b/src/wren_vm.c
index 4f6fed24..f42c23cf 100644
--- a/src/wren_vm.c
+++ b/src/wren_vm.c
@@ -74,9 +74,6 @@ WrenVM* wrenNewVM(WrenConfiguration* configuration)
#if WREN_USE_LIB_IO
wrenLoadIOLibrary(vm);
#endif
- #if WREN_USE_LIB_IO
- wrenLoadMathLibrary(vm);
- #endif
return vm;
}
diff --git a/test/math/abs.wren b/test/math/abs.wren
deleted file mode 100644
index 92f4fae6..00000000
--- a/test/math/abs.wren
+++ /dev/null
@@ -1,8 +0,0 @@
-IO.print(Math.abs(123)) // expect: 123
-IO.print(Math.abs(-123)) // expect: 123
-IO.print(Math.abs(0)) // expect: 0
-IO.print(Math.abs(-0)) // expect: 0
-IO.print(Math.abs(-0.12)) // expect: 0.12
-IO.print(Math.abs(12.34)) // expect: 12.34
-IO.print(Math.abs(1.0)) // expect: 1
-IO.print(Math.abs(-1.0)) // expect: 1
diff --git a/test/math/all_tests.wren b/test/math/all_tests.wren
deleted file mode 100644
index 4f4d9959..00000000
--- a/test/math/all_tests.wren
+++ /dev/null
@@ -1,40 +0,0 @@
-IO.print("abs")
-IO.print(Math.abs(123)) // expect: 123
-IO.print(Math.abs(-123)) // expect: 123
-IO.print(Math.abs(0)) // expect: 0
-IO.print(Math.abs(-0)) // expect: 0
-IO.print(Math.abs(-0.12)) // expect: 0.12
-IO.print(Math.abs(12.34)) // expect: 12.34
-
-IO.print(Math.abs(1.0)) // expect: 1
-IO.print(Math.abs(-1.0)) // expect: 1
-
-IO.print("ceil")
-IO.print(Math.ceil(2.3)) // expect: 3
-IO.print(Math.ceil(3.8)) // expect: 4
-IO.print(Math.ceil(-2.3)) // expect: -2
-IO.print(Math.ceil(-3.8)) // expect: -3
-
-IO.print("floor")
-IO.print(Math.floor(2.3)) // expect: 2
-IO.print(Math.floor(3.8)) // expect: 3
-IO.print(Math.floor(-2.3)) // expect: -3
-IO.print(Math.floor(-3.8)) // expect: -4
-
-IO.print("int")
-IO.print(Math.int(8)) // expect: 8
-IO.print(Math.int(12.34)) // expect: 12
-IO.print(Math.int(-8)) // expect: -8
-IO.print(Math.int(-12.34)) // expect: -12
-
-IO.print("frac")
-IO.print(Math.frac(8)) // expect: 0
-IO.print(Math.frac(12.34)) // expect: 0.34
-IO.print(Math.frac(-8)) // expect: -0
-IO.print(Math.frac(-12.34)) // expect: -0.34
-
-IO.print("srand/rand")
-Math.srand
-for (i in 1..10) {
- IO.print(Math.floor(Math.rand * 100))
-}
diff --git a/test/math/ceil.wren b/test/math/ceil.wren
deleted file mode 100644
index 6e8c3dfd..00000000
--- a/test/math/ceil.wren
+++ /dev/null
@@ -1,4 +0,0 @@
-IO.print(Math.ceil(2.3)) // expect: 3
-IO.print(Math.ceil(3.8)) // expect: 4
-IO.print(Math.ceil(-2.3)) // expect: -2
-IO.print(Math.ceil(-3.8)) // expect: -3
diff --git a/test/math/floor.wren b/test/math/floor.wren
deleted file mode 100644
index 687ba088..00000000
--- a/test/math/floor.wren
+++ /dev/null
@@ -1,4 +0,0 @@
-IO.print(Math.floor(2.3)) // expect: 2
-IO.print(Math.floor(3.8)) // expect: 3
-IO.print(Math.floor(-2.3)) // expect: -3
-IO.print(Math.floor(-3.8)) // expect: -4
diff --git a/test/math/frac.wren b/test/math/frac.wren
deleted file mode 100644
index 04506f6d..00000000
--- a/test/math/frac.wren
+++ /dev/null
@@ -1,4 +0,0 @@
-IO.print(Math.frac(8)) // expect: 0
-IO.print(Math.frac(12.34)) // expect: 0.34
-IO.print(Math.frac(-8)) // expect: -0
-IO.print(Math.frac(-12.34)) // expect: -0.34
diff --git a/test/math/int.wren b/test/math/int.wren
deleted file mode 100644
index a78a5037..00000000
--- a/test/math/int.wren
+++ /dev/null
@@ -1,4 +0,0 @@
-IO.print(Math.int(8)) // expect: 8
-IO.print(Math.int(12.34)) // expect: 12
-IO.print(Math.int(-8)) // expect: -8
-IO.print(Math.int(-12.34)) // expect: -12
diff --git a/test/math/rand.wren b/test/math/rand.wren
deleted file mode 100644
index 890d9a6e..00000000
--- a/test/math/rand.wren
+++ /dev/null
@@ -1,4 +0,0 @@
-Math.srand
-for (i in 1..10) {
- IO.print(Math.floor(Math.rand * 100))
-}