<div dir="ltr">I'd posted the comment here, it's not much of a description though.<br><div><br><a href="https://github.com/urweb/urweb/issues/99#issuecomment-343450038">https://github.com/urweb/urweb/issues/99#issuecomment-343450038</a></div><div><br></div><div>The only other thought i'd had is something i have tried to work on, but not yet had any luck with,<br></div><div>which is an implementation of the nanopass-framework as ur modules, the nanopass framework in the scheme implementation of it provides a set of macros (define-language, define-pass), which are a bit difficult to nail down</div><div>in a statically typed language.</div><div><br></div><div>In particular it seems to require row polymorphism, folds, pattern matching, type -> type functions</div><div>all which seem to be provided by Ur, individually I can see that the pieces seem to be there, that I can imagine the big picture of how the macros could be implemented in ur, but I haven't managed to put it all together, not sure if it'd be a bit much for a semester or not.<br></div><div></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Nov 10, 2017 at 4:56 AM, Daniel Agota <span dir="ltr"><<a href="mailto:agota.daniel@gmail.com" target="_blank">agota.daniel@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div text="#000000" bgcolor="#FFFFFF" style="background-color:rgb(255,255,255);line-height:initial" lang="de-DE">                                                                                      <div style="width:100%;font-size:initial;font-family:Calibri,'Slate Pro',sans-serif,sans-serif;color:rgb(31,73,125);text-align:initial;background-color:rgb(255,255,255)">Hi Adam, </div><div style="width:100%;font-size:initial;font-family:Calibri,'Slate Pro',sans-serif,sans-serif;color:rgb(31,73,125);text-align:initial;background-color:rgb(255,255,255)"><br></div><div style="width:100%;font-size:initial;font-family:Calibri,'Slate Pro',sans-serif,sans-serif;color:rgb(31,73,125);text-align:initial;background-color:rgb(255,255,255)">Thanks for the WebAssembly suggestion it sounds really interesting. </div><div style="width:100%;font-size:initial;font-family:Calibri,'Slate Pro',sans-serif,sans-serif;color:rgb(31,73,125);text-align:initial;background-color:rgb(255,255,255)"><br></div><div style="width:100%;font-size:initial;font-family:Calibri,'Slate Pro',sans-serif,sans-serif;color:rgb(31,73,125);text-align:initial;background-color:rgb(255,255,255)">Please point me to a description if you already have one so I can register it to my lecturer.</div><div style="width:100%;font-size:initial;font-family:Calibri,'Slate Pro',sans-serif,sans-serif;color:rgb(31,73,125);text-align:initial;background-color:rgb(255,255,255)"><br></div><div style="width:100%;font-size:initial;font-family:Calibri,'Slate Pro',sans-serif,sans-serif;color:rgb(31,73,125);text-align:initial;background-color:rgb(255,255,255)">Kind regards, Daniel</div><span class="">                                                                                                                                     <div style="width:100%;font-size:initial;font-family:Calibri,'Slate Pro',sans-serif,sans-serif;color:rgb(31,73,125);text-align:initial;background-color:rgb(255,255,255)"><br></div>                                                                                                                                                                                                   <div style="font-size:initial;font-family:Calibri,'Slate Pro',sans-serif,sans-serif;color:rgb(31,73,125);text-align:initial;background-color:rgb(255,255,255)">Gesendet von meinem <wbr>BlackBerry 10-Smartphone.</div>                                                                                                                                                                                  </span><table style="background-color:white;border-spacing:0px" width="100%"> <tbody><tr><td colspan="2" style="font-size:initial;text-align:initial;background-color:rgb(255,255,255)">                           <div style="border-style:solid none none;border-top-color:rgb(181,196,223);border-top-width:1pt;padding:3pt 0in 0in;font-family:Tahoma,'BB Alpha Sans','Slate Pro';font-size:10pt">  <div><b>Von: </b>Adam Chlipala</div><div><b>Gesendet: </b>Freitag, 10. November 2017 13:53</div><div><b>An: </b><a href="mailto:ur@impredicative.com" target="_blank">ur@impredicative.com</a></div><div><b>Antwort an: </b>The Ur programming language</div><div><b>Betreff: </b>Re: [Ur] Research topic one semester Ur/Wev or dependent typer</div></div></td></tr></tbody></table><div><div class="h5"><div style="border-style:solid none none;border-top-color:rgb(186,188,209);border-top-width:1pt;font-size:initial;text-align:initial;background-color:rgb(255,255,255)"></div><br><div id="m_-2359641284526076710_originalContent" style="background-color:rgb(255,255,255)">
  
    
  
  
    <div class="m_-2359641284526076710moz-cite-prefix">Actually, one other idea that just came
      up on GitHub is adding a WebAssembly backend to the Ur/Web
      compiler.  This task requires SML expertise but is probably small
      enough for someone starting with that expertise.<br>
      <br>
      On 11/10/2017 07:50 AM, Adam Chlipala wrote:<br>
    </div>
    <blockquote type="cite">
      
      <div class="m_-2359641284526076710moz-cite-prefix">Glad to hear you're interested in
        these topics!  And presumably some other people following the
        mailing list might be interested in similar suggestions, though
        I suggest you take any further replies private, sending to me
        alone.<br>
        <br>
        The only semester-sized idea I have at the moment is to learn
        about <a href="http://upo.csail.mit.edu/" target="_blank">UPO</a> and implement a new
        module or two.  I consider Ur/Web almost done as a research
        project, as it is almost fully transitioned into a production
        toolset.<br>
        <br>
        On 11/10/2017 03:13 AM, Daniel Agota wrote:<br>
      </div>
      <blockquote type="cite">
        
        
        <div>Dear Adam,</div>
        <div><br>
        </div>
        <div>Could you propose me a small scale research project either
          related to Ur/Web or the topics covered in the cpdt book? </div>
        <div><br>
        </div>
        <div>I am doing a one semester masters level course focusing
          primarily on research methodol‎ogy, but I personally  would
          like to work on a meaningful project.</div>
        <div><br>
        </div>
        <div>I am a Senior Developer with 9 years industrial experience
          currently working with micro services. </div>
        <div><br>
        </div>
        <div>I have read the ‎Types and Programming Languages book from
          Benjamin Pierce and the Software Foundations book about two
          years ago.</div>
        <div><br>
        </div>
        <div>Kind Regards, Daniel Agota</div>
      </blockquote>
    </blockquote>
  

<br></div></div></div></div>

<br>______________________________<wbr>_________________<br>
Ur mailing list<br>
<a href="mailto:Ur@impredicative.com">Ur@impredicative.com</a><br>
<a href="http://www.impredicative.com/cgi-bin/mailman/listinfo/ur" rel="noreferrer" target="_blank">http://www.impredicative.com/<wbr>cgi-bin/mailman/listinfo/ur</a><br>
<br></blockquote></div><br></div>