<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></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 Mar 19, 2015, at 3:44 PM, saam barati &lt;<a href="mailto:saambarati1@gmail.com" class="">saambarati1@gmail.com</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class="">
<div class="">I think JavaScriptCore will need access to 'platform', too, to implement some ES6 features.&nbsp;</div></div></blockquote><div><br class=""></div><div>Anything needed for JavaScriptCore should go to WTF. Otherwise there is no point having a separation.</div><div><br class=""></div><div>&nbsp;- Maciej</div><br class=""><blockquote type="cite" class=""><div class="">
<div class="mailbox_signature">
<br class="">
Saam</div>
<br class=""><br class=""><div class="gmail_quote"><p class="">On Thu, Mar 19, 2015 at 2:50 PM, Maciej Stachowiak <span dir="ltr" class="">&lt;<a href="mailto:mjs@apple.com" target="_blank" class="">mjs@apple.com</a>&gt;</span> wrote:<br class=""></p><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><br class="">&gt; On Mar 19, 2015, at 1:47 PM, Benjamin Poulain &lt;<a href="mailto:benjamin@webkit.org" class="">benjamin@webkit.org</a>&gt; wrote:<br class="">&gt; <br class="">&gt; On 3/18/15 9:43 PM, Myles C. Maxfield wrote:<br class="">&gt;&gt; Hello, all,<br class="">&gt;&gt; <br class="">&gt;&gt; I’d like to announce that I intend to create a standalone static library from the current contents of WebCore/platform over the coming months. This will involve creating a “Platform" top-level directory and moving source files into it, one by one.<br class="">&gt;&gt; <br class="">&gt;&gt; There are a few reasons for this:<br class="">&gt;&gt; <br class="">&gt;&gt; 1. Enforcing the layering between Platform and WebCore. Moving Platform into its own target/directory can guarantee that nothing inside it knows about anything in WebCore.<br class="">&gt;&gt; 2. Being able to test code in the Platform directory with TestWebKitAPI (without exporting Platform symbols from the WebCore library)<br class="">&gt;&gt; 3. Managing conceptual complexity.<br class="">&gt;&gt; <br class="">&gt;&gt; Does anyone have any thoughts or feedback?<br class="">&gt; <br class="">&gt; That's an awesome project. That's gonna be a lot of work.<br class="">&gt; <br class="">&gt; How do you plan to do the interface between WebCore and Platform?<br class="">&gt; <br class="">&gt; Between WebCore and WebKit, we use interfaces with pure virtual functions that are implemented by the clients.<br class="">&gt; Between WebCore and the platform, we have headers and each port has its own implementation of that interface.<br class="">&gt; <br class="">&gt; Do you plan to move Platform behind a public interface or keep the current model?<br class=""><br class="">I don’t think we need a model like the WebCore/WebKit interface. WTF is essentially like the proposed Platform library already, and it just exposes normal C++ headers and implementation files. I think the main benefit here is cleaning up the layering, as opposed to adding more abstraction. In fact, you could sort of think of WTF and Platform as logically the same library, with WTF being only the parts needed by JavaScriptCore, plus things that are logically at the same level (so basically non-GUI and no networking code).<br class=""><br class="">This almost makes me want to suggest a jokey name for Platform. I can’t off the top of my head think of a good expansion of OMG, though. Or BBQ.<br class=""><br class="">Regards,<br class="">Maciej<br class=""><br class="">_______________________________________________<br class="">webkit-dev mailing list<br class=""><a href="mailto:webkit-dev@lists.webkit.org" class="">webkit-dev@lists.webkit.org</a><br class="">https://lists.webkit.org/mailman/listinfo/webkit-dev<br class=""></blockquote></div><br class=""></div></blockquote></div><br class=""></body></html>