<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><br class=""><div><blockquote type="cite" class=""><div class="">On 05 Jan 2016, at 04:11, David Turnbull via swift-users &lt;<a href="mailto:swift-users@swift.org" class="">swift-users@swift.org</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class=""><div class="">I've been working on a math library for SwiftGL. It's looking good. Vector2, Vector3, Vector4, Matrix2x2, Matrix3x3, Matrix4x4 are implemented with all arithmetic. You can even swizzle just like GLSL.</div><div class=""><br class=""></div><div class=""><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="color:rgb(187,44,162)" class="">var</span> myVec = <span style="color:rgb(79,129,135)" class="">vec4</span>(<span style="color:rgb(39,42,216)" class="">1</span>, <span style="color:rgb(39,42,216)" class="">2</span>, <span style="color:rgb(39,42,216)" class="">3</span>, <span style="color:rgb(39,42,216)" class="">4</span>)</div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(79, 129, 135);" class="">myVec<span style="" class="">.</span>ab<span style="" class=""> = </span>vec2<span style="" class="">(</span><span style="color:rgb(39,42,216)" class="">99</span><span style="" class="">, </span><span style="color:rgb(39,42,216)" class="">98</span><span style="" class="">)</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(0, 132, 0);" class=""><span style="color:rgb(61,29,129)" class="">print</span><span style="" class="">(</span><span style="color:rgb(79,129,135)" class="">myVec</span><span style="" class="">) </span>//=&gt; (1, 2, 98, 99)</div></div><div class=""><br class=""></div><div class="">There's still a lot to do. I hope to have feature parity with GLSL done this week. But it's ready to set free and get feedback.</div><div class=""><br class=""></div><a href="https://github.com/AE9RB/SwiftGL" class="">https://github.com/AE9RB/SwiftGL</a><br class=""><div class=""><br class=""></div><div class="">And a couple questions. Is there any way to make&nbsp;<span style="font-family:Menlo;font-size:11px;color:rgb(187,44,162)" class="">import</span><span style="font-family:Menlo;font-size:11px" class=""> SwiftGL.Math&nbsp;</span>work? Note the dot. Also, is there anything reasonable I can do to improve the compile time? 3.5 minutes for 2000 lines of code can't be right.</div></div></div></blockquote><div><br class=""></div><div>To find out which parts of your code are causing issues add `-Xfrontend -debug-time-function-bodies` in "Other Swift Flags".</div><div>When building Xcode will print the compile times of functions in the build log.</div><div><br class=""></div><div>The main culprits seem to be the `*`, `inverse` and `determinant` functions of `Matrix3x3` and `Matrix4x4` where type inference probably runs amok. Breaking these calculation up into smaller statements should drastically reduce the compile times.</div><div><br class=""></div><blockquote type="cite" class=""><div class=""><div dir="ltr" class=""><div class="">-David "Expression was too complex to be solved" Turnbull<br class=""></div><div class=""><br class=""></div></div>
<img src="https://u2002410.ct.sendgrid.net/wf/open?upn=nns-2FBjd8vUIyZmnkfXvcBIDOLRP1cU9oMCgK1G0q49fPzBqsdZoB8AV0Jnutx-2FRh7q8k3pNiAXiUIKOB-2Fde-2BF7pi398ccbaSuYYJ-2BDnLEr2F-2F2hERCGw0CaOQILasEAtzH3GJcgk2NNgSP6iLCTkwoLN2eVeupCumGpd-2FxnB-2Ba-2FT9WEO3uB8X4eDqR50pqeEOrdVAiaxeBP7iaW5DlnkZw-3D-3D" alt="" width="1" height="1" border="0" style="height:1px !important;width:1px !important;border-width:0 !important;margin-top:0 !important;margin-bottom:0 !important;margin-right:0 !important;margin-left:0 !important;padding-top:0 !important;padding-bottom:0 !important;padding-right:0 !important;padding-left:0 !important;" class="">
_______________________________________________<br class="">swift-users mailing list<br class=""><a href="mailto:swift-users@swift.org" class="">swift-users@swift.org</a><br class="">https://lists.swift.org/mailman/listinfo/swift-users<br class=""></div></blockquote></div><br class=""><div class="">
<div class="">- Janosch</div>

</div>
<br class=""></body></html>