<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=us-ascii" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 11.00.10570.1001"></HEAD>
<BODY>
<DIV dir=ltr align=left><SPAN class=443474102-27012018><FONT color=#000080 
face=Calibri>Hi Takenobu,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=443474102-27012018><FONT color=#000080 
face=Calibri></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=443474102-27012018><FONT color=#000080 
face=Calibri>You are very welcome. Indeed I think that Cardano made all the 
right technical choices, and looks extremely promising. I am not the only one 
feeling that way, and Cardono, even before being released, has now the 5th 
highest market cap of all crypto currencies. The repeated issues with Solidity, 
which was designed for ease of use instead of correctness, make a lot of people 
feel that Cardano and its Haskell inspired scripting languages would be a much 
better choice for writing reliable and correct smart 
contracts.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=443474102-27012018><FONT color=#000080 
face=Calibri></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=443474102-27012018><FONT color=#000080 
face=Calibri>Good luck in your exploration. I'd like to learn more about it as 
well.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=443474102-27012018><FONT color=#000080 
face=Calibri></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=443474102-27012018><FONT color=#000080 
face=Calibri>Thanks,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=443474102-27012018><FONT color=#000080 
face=Calibri></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=443474102-27012018><FONT color=#000080 
face=Calibri>gregory</FONT></SPAN></DIV><BR>
<DIV lang=en-us class=OutlookMessageHeader dir=ltr align=left>
<HR tabIndex=-1>
<FONT size=2 face=Tahoma><B>From:</B> Takenobu Tani 
[mailto:takenobu.hs@gmail.com] <BR><B>Sent:</B> Friday, January 26, 2018 9:28 
PM<BR><B>To:</B> Gregory Popovitch<BR><B>Cc:</B> haskell-cafe<BR><B>Subject:</B> 
Re: [Haskell-cafe] Haskell to Ethereum VM ?<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV dir=ltr>Hi Gregory,<BR><BR>Thank you for much information.<BR>I have heard 
Cardano, but I did not know the details.<BR><BR>It's amazing!<BR><BR>Although 
Ethereum VM is stack based virtual machine, <BR>Cardano's IELE(VM) is register 
based VM!, it's powerfull and beautiful!<BR>In addition, it is protected by 
semantics.<BR><BR>Umm, High-level safety abstructed language (Haskell based) + 
register based VM (IELE) !<BR>It's amazing.<BR><BR>Thank you for telling me 
details.<BR>I will explore this.<BR><BR>Thank you very 
much,<BR>Takenobu<BR><BR></DIV>
<DIV class=gmail_extra><BR>
<DIV class=gmail_quote>2018-01-27 10:22 GMT+09:00 Gregory Popovitch <SPAN 
dir=ltr><<A href="mailto:greg7mdp@gmail.com" 
target=_blank>greg7mdp@gmail.com</A>></SPAN>:<BR>
<BLOCKQUOTE class=gmail_quote 
style="PADDING-LEFT: 1ex; BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex"><U></U>
  <DIV>
  <DIV dir=ltr align=left><SPAN 
  class=m_-1728815040249541742776561701-27012018><FONT color=#000080 
  face=Calibri>Probably you are aware of Cardano (<A 
  href="https://www.cardanohub.org/en/home/" 
  target=_blank>https://www.cardanohub.org/<WBR>en/home/</A>), a new generation 
  blockchain platform which uses languages inspired from Haskell. From the 
  whitepaper at <A href="https://whycardano.com/" 
  target=_blank>https://whycardano.com/</A>:</FONT></SPAN></DIV>
  <DIV dir=ltr align=left><SPAN 
  class=m_-1728815040249541742776561701-27012018><FONT color=#000080 
  face=Calibri></FONT></SPAN> </DIV>
  <DIV dir=ltr align=left><SPAN 
  class=m_-1728815040249541742776561701-27012018><FONT color=#000080 
  face=Calibri>"Systems such as Bitcoin provide an extremely inflexible and 
  draconian scripting language that is difficult to program bespoke transactions 
  in, and to read and understand. Yet the general programmability of languages 
  such as Solidity introduce an extraordinary amount of complexity into the 
  system and are useful to only a much smaller set of actors. 
  <P 
  style='BOX-SIZING: border-box; FONT-SIZE: 13px; FONT-FAMILY: "Open Sans",sans-serif; WHITE-SPACE: normal; WORD-SPACING: 0px; TEXT-TRANSFORM: none; FONT-WEIGHT: 400; COLOR: rgb(85,85,85); FONT-STYLE: normal; MARGIN: 0px 0px 10px; LETTER-SPACING: normal; BACKGROUND-COLOR: rgb(250,251,252); TEXT-INDENT: 0px; font-variant-ligatures: normal; font-variant-caps: normal; text-decoration-style: initial; text-decoration-color: initial'>Therefore, 
  we have chosen to design a new language called Simon<SUP 
  style="BOX-SIZING: border-box; FONT-SIZE: 10px; VERTICAL-ALIGN: baseline; LINE-HEIGHT: 0"><A 
  style="BOX-SIZING: border-box; TEXT-DECORATION: none; COLOR: rgb(31,107,206); OUTLINE-WIDTH: 0px !important; OUTLINE-STYLE: none !important; OUTLINE-COLOR: invert !important" 
  href="https://whycardano.com/#footnote6" 
  target=_blank>6</A></SUP><SPAN> </SPAN>in honor of its creator Simon 
  Thompson and the creator of the concepts that inspired it, Simon Peyton Jones. 
  Simon is a domain-specific language that is based upon<SPAN> </SPAN><EM 
  style="BOX-SIZING: border-box"><A 
  style="BOX-SIZING: border-box; TEXT-DECORATION: none; COLOR: rgb(31,107,206); OUTLINE-WIDTH: 0px !important; OUTLINE-STYLE: none !important; OUTLINE-COLOR: invert !important" 
  href="https://www.lexifi.com/files/resources/MLFiPaper.pdf" 
  target=_blank>Composing contracts: an adventure in financial 
  engineering</A></EM>.</P>
  <P 
  style='BOX-SIZING: border-box; FONT-SIZE: 13px; FONT-FAMILY: "Open Sans",sans-serif; WHITE-SPACE: normal; WORD-SPACING: 0px; TEXT-TRANSFORM: none; FONT-WEIGHT: 400; COLOR: rgb(85,85,85); FONT-STYLE: normal; MARGIN: 0px 0px 10px; LETTER-SPACING: normal; BACKGROUND-COLOR: rgb(250,251,252); TEXT-INDENT: 0px; font-variant-ligatures: normal; font-variant-caps: normal; text-decoration-style: initial; text-decoration-color: initial'>The 
  principal idea is that financial transactions are generally composed from a 
  collection of foundational elements<SUP 
  style="BOX-SIZING: border-box; FONT-SIZE: 10px; VERTICAL-ALIGN: baseline; LINE-HEIGHT: 0"><A 
  style="BOX-SIZING: border-box; TEXT-DECORATION: none; COLOR: rgb(31,107,206); OUTLINE-WIDTH: 0px !important; OUTLINE-STYLE: none !important; OUTLINE-COLOR: invert !important" 
  href="https://whycardano.com/#footnote7" target=_blank>7</A></SUP>. If one 
  assembles a financial periodic table of elements, then one can provide support 
  for an arbitrarily large set of compound transactions that will cover most, if 
  not all, common transaction types without requiring general 
  programmability.</P>
  <P 
  style='BOX-SIZING: border-box; FONT-SIZE: 13px; FONT-FAMILY: "Open Sans",sans-serif; WHITE-SPACE: normal; WORD-SPACING: 0px; TEXT-TRANSFORM: none; FONT-WEIGHT: 400; COLOR: rgb(85,85,85); FONT-STYLE: normal; MARGIN: 0px 0px 10px; LETTER-SPACING: normal; BACKGROUND-COLOR: rgb(250,251,252); TEXT-INDENT: 0px; font-variant-ligatures: normal; font-variant-caps: normal; text-decoration-style: initial; text-decoration-color: initial'>The 
  primary advantage is that security and execution can be extremely well 
  understood. Proofs can be written to show correctness of templates and exhaust 
  the execution space of problematic transaction events, such as the creation 
  of<SPAN> </SPAN><A 
  style="BOX-SIZING: border-box; TEXT-DECORATION: none; COLOR: rgb(31,107,206); OUTLINE-WIDTH: 0px !important; OUTLINE-STYLE: none !important; OUTLINE-COLOR: invert !important" 
  href="https://en.bitcoin.it/wiki/Value_overflow_incident" target=_blank>new 
  money out of thin air</A><SPAN> </SPAN>or<SPAN> </SPAN><A 
  style="BOX-SIZING: border-box; TEXT-DECORATION: none; COLOR: rgb(31,107,206); OUTLINE-WIDTH: 0px !important; OUTLINE-STYLE: none !important; OUTLINE-COLOR: invert !important" 
  href="https://en.bitcoin.it/wiki/Transaction_Malleability" 
  target=_blank>transaction malleability</A>. Second, one can leave in 
  extensions to add more elements by way of soft forks if new functionality is 
  required.</P>
  <P 
  style='BOX-SIZING: border-box; FONT-SIZE: 13px; FONT-FAMILY: "Open Sans",sans-serif; WHITE-SPACE: normal; WORD-SPACING: 0px; TEXT-TRANSFORM: none; FONT-WEIGHT: 400; COLOR: rgb(85,85,85); FONT-STYLE: normal; MARGIN: 0px 0px 10px; LETTER-SPACING: normal; BACKGROUND-COLOR: rgb(250,251,252); TEXT-INDENT: 0px; font-variant-ligatures: normal; font-variant-caps: normal; text-decoration-style: initial; text-decoration-color: initial'>That 
  said, there will always be a need to connect CSL to overlay protocols, legacy 
  financial systems, and special purpose servers. Thus we have 
  developed<SPAN> </SPAN><A 
  style="BOX-SIZING: border-box; TEXT-DECORATION: none; COLOR: rgb(31,107,206); OUTLINE-WIDTH: 0px !important; OUTLINE-STYLE: none !important; OUTLINE-COLOR: invert !important" 
  href="https://github.com/input-output-hk/plutus-prototype" 
  target=_blank>Plutus</A><SPAN> </SPAN>as both a general purpose smart 
  contract language and also a special purpose DSL for interoperability.</P>
  <P 
  style='BOX-SIZING: border-box; FONT-SIZE: 13px; FONT-FAMILY: "Open Sans",sans-serif; WHITE-SPACE: normal; WORD-SPACING: 0px; TEXT-TRANSFORM: none; FONT-WEIGHT: 400; COLOR: rgb(85,85,85); FONT-STYLE: normal; MARGIN: 0px 0px 10px; LETTER-SPACING: normal; BACKGROUND-COLOR: rgb(250,251,252); TEXT-INDENT: 0px; font-variant-ligatures: normal; font-variant-caps: normal; text-decoration-style: initial; text-decoration-color: initial'>Plutus 
  is a typed functional language based on concepts from Haskell, which can be 
  used to write custom transaction scripts. For CSL, it will be used for complex 
  transactions required to add support for other layers we need to connect, such 
  as our sidechains scheme.<SPAN 
  class=m_-1728815040249541742776561701-27012018>"</SPAN></P></FONT></SPAN></DIV><BR>
  <DIV lang=en-us class=m_-1728815040249541742OutlookMessageHeader dir=ltr 
  align=left>
  <HR>
  <FONT size=2 face=Tahoma><B>From:</B> Haskell-Cafe [mailto:<A 
  href="mailto:haskell-cafe-bounces@haskell.org" 
  target=_blank>haskell-cafe-bounces@<WBR>haskell.org</A>] <B>On Behalf Of 
  </B>Takenobu Tani<BR><B>Sent:</B> Friday, January 26, 2018 8:05 
  PM<BR><B>To:</B> Patrick Mylund Nielsen<BR><B>Cc:</B> 
  haskell-cafe<BR><B>Subject:</B> Re: [Haskell-cafe] Haskell to Ethereum VM 
  ?<BR></FONT><BR></DIV>
  <DIV>
  <DIV class=h5>
  <DIV></DIV>
  <DIV dir=ltr>Hi Carter, Patrick,<BR><BR>Thank you for reply.<BR>Quorum is 
  interesting!<BR>It would be very nice to be able to describe Ethereum's 
  contract with Haskell DSL.<BR>The characteristics about immutable and type 
  will fit DApps.<BR><BR>Thank you very much,<BR>Takenobu<BR><BR><BR></DIV>
  <DIV class=gmail_extra><BR>
  <DIV class=gmail_quote>2018-01-27 2:55 GMT+09:00 Patrick Mylund Nielsen <SPAN 
  dir=ltr><<A href="mailto:haskell@patrickmn.com" 
  target=_blank>haskell@patrickmn.com</A>></SPAN>:<BR>
  <BLOCKQUOTE class=gmail_quote 
  style="PADDING-LEFT: 1ex; BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex">The 
    Quorum[1] team has been dreaming about such a<BR>Haskell-beginner-friendly 
    bytecode-generating DSL for a very long time.<BR>The user experience of 
    writing applications in a language where pitfalls<BR>are so non-obvious is 
    one of the biggest pain points of Ethereum in general.<BR><BR>We would 
    warmly welcome something like this, and would definitely look<BR>to use it 
    in Quorum. (Our EVM is the same as public Ethereum.)<BR><BR>[1]: A 
    permissioned/non-PoW version of Ethereum with high throughput and<BR>privacy 
    - <A href="https://github.com/jpmorganchase/quorum/" rel=noreferrer 
    target=_blank>https://github.com/jpmorgancha<WBR>se/quorum/</A><BR><SPAN 
    class="m_-1728815040249541742im m_-1728815040249541742HOEnZb"><BR>On 
    1/26/2018 11:43 AM, Carter Schonwald wrote:<BR>> Hello 
    Takenobu, <BR>> while theres definitely a lot of haskell code out 
    there that deals with<BR>> ethereum (or implementing it!), i'm not aware 
    of anything targeting the<BR>> evm isa from haskell or any other mature 
    functional programming language<BR>><BR>> On Fri, Jan 26, 2018 at 8:09 
    AM, Takenobu Tani <<A href="mailto:takenobu.hs@gmail.com" 
    target=_blank>takenobu.hs@gmail.com</A><BR></SPAN>
    <DIV class=m_-1728815040249541742HOEnZb>
    <DIV class=m_-1728815040249541742h5>> <mailto:<A 
    href="mailto:takenobu.hs@gmail.com" 
    target=_blank>takenobu.hs@gmail.com</A>><WBR>> 
    wrote:<BR>><BR>>     Hi cafe,<BR>><BR>>  
       Does anyone know about the code generator from Haskell's syntax 
    to<BR>>     Ethereum VM language (bytecode)?<BR>>  
       That is, what corresponds to Solidity in 
    Haskell.<BR>><BR>>     Although Solidity is 
    interesting, it's difficult for me to achieve<BR>>    
     quality and safety.<BR>>     Does such a project 
    already exist?<BR>><BR>>     Regards,<BR>>  
       Takenobu<BR>><BR>><BR>><BR>>    
     _____________________________<WBR>__________________<BR>>  
       Haskell-Cafe mailing list<BR>>     To 
    (un)subscribe, modify options or view archives go to:<BR>>    
     <A 
    href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" 
    rel=noreferrer 
    target=_blank>http://mail.haskell.org/cgi-b<WBR>in/mailman/listinfo/haskell-ca<WBR>fe</A><BR>>  
       <<A 
    href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" 
    rel=noreferrer 
    target=_blank>http://mail.haskell.org/cgi-<WBR>bin/mailman/listinfo/haskell-c<WBR>afe</A>><BR>>  
       Only members subscribed via the mailman list are allowed to 
    post.<BR>><BR>><BR>><BR>><BR>> 
    ______________________________<WBR>_________________<BR>> Haskell-Cafe 
    mailing list<BR>> To (un)subscribe, modify options or view archives go 
    to:<BR>> <A 
    href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" 
    rel=noreferrer 
    target=_blank>http://mail.haskell.org/cgi-bi<WBR>n/mailman/listinfo/haskell-caf<WBR>e</A><BR>> 
    Only members subscribed via the mailman list are allowed to 
    post.<BR>><BR></DIV></DIV></BLOCKQUOTE></DIV><BR></DIV></DIV></DIV></DIV></BLOCKQUOTE></DIV><BR></DIV></BODY></HTML>