<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Feb 7, 2014 at 6:39 PM, Argyrios Kyrtzidis <span dir="ltr"><<a href="mailto:kyrtzidis@apple.com" target="_blank">kyrtzidis@apple.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div>Hi Manuel,</div><div><br></div><div><div class="im"><div>On Feb 7, 2014, at 1:01 AM, Manuel Klimek <<a href="mailto:klimek@google.com" target="_blank">klimek@google.com</a>> wrote:</div>
<br></div><div class="im"><blockquote type="cite"><blockquote class="gmail_quote" style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div style="word-wrap:break-word"><div><br>Some non-goals (at least for a first iteration):</div><div>1) File system modification operations (create_directory, rename, etc.).  Clients will continue to use the real file system for these operations, and we don’t intend to detect any conflicts this might create.</div>
<div>2) Completely virtual file buffers that do not exist on disk.</div></div></blockquote><div style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">
<br></div><div style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">
I'd vote for making that an explicit goal; two reasons:</div><div style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">
1. I don't think it'll make a first iteration harder to implement</div><div style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">
2. saying that we'll do things like that later will almost certainly make it super-hard to do later</div><br></blockquote></div></div><div><br></div><div>We don’t have the bandwidth to design / implement / test fully virtual files.</div>
</div></blockquote><div><br></div><div>I'm curious why you think it will be a lot more effort; my gut feeling would be that this is probably going to be less effort (depending on what exactly you want to use the VFS layer for) if we don't want to break all of the Tooling layers in the process.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div>We also don’t have uses for them (apart from replacing the remapping of buffers in the SourceManager) so I think this should be driven by someone that actually needs this and is going to dogfood it.</div>
<div><br></div><div>Apart from that, we are definitely trying to make sure we will not do anything that will make adding virtual files prohibitively difficult, we think it can be added on top with maybe some refinements on the interface.</div>
<div>While we are implementing the VFS if you think we are doing something that will make virtual file buffers “super-hard to do later” please let us know.</div></div></blockquote></div><br></div><div class="gmail_extra">
Will do.</div><div class="gmail_extra"><br></div><div class="gmail_extra">Cheers,</div><div class="gmail_extra">/Manuel</div></div>