<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Thu, Aug 6, 2015 at 6:19 AM Vlatko Basic <<a href="mailto:vlatko.basic@gmail.com">vlatko.basic@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div style="background-color:rgb(255,255,255);color:rgb(0,0,0)" text="#000000" bgcolor="#FFFFFF">
    The old Turbo Pascal keyword "with" (used for records) popped up in
    my mind. <br>
    It's rather clear for namespace resolution  and would look something
    like this:<br>
    <br>
      with Data.ByteString $ do<br>
         map f ...<br>
    <br>
      with Prelude $ do<br>
         map f ...<br>
    <br>
    or more explicit<br>
    <br>
      withImport Data.ByteString $ do<br>
         ....<br></div></blockquote><div><br></div><div>One problem with this is that it forces an ordering on statements. Sometimes you might want to push the imports to the side, by moving them to a where clause, rather than a let binding. I'm hoping that whatever we propose would allow you to do this. That's why I think the syntax construct needs to be something that appears at the time of doing bindings.</div><div><br></div><div><i>ocharles</i> <br></div></div></div>