[Haskell-cafe] Haskell to Ethereum VM ?

Takenobu Tani takenobu.hs at gmail.com
Sat Mar 10 09:25:49 UTC 2018


Hi Will,

Thank you for the information.
There are various smart contract environments using Haskell.
I will explore various projects.

Thanks,
Takenobu

2018-03-10 15:51 GMT+09:00 William Martino <wjmartino at gmail.com>:

> Hi,
>
> You may also want to look at another (formerly) JPM project
> https://github.com/kadena-io/masala -- standalone pure EVM. When it was
> up to date it was pretty close to bug for bug compatible... yes, the EVM
> unit tests checked for at least one bug's existence.
>
> FYI the degree to/ways in which the EVM is hilariously broken were large
> influences on [disclosure: am co-founder] Kadena's smart contract language
> Pact https://github.com/kadena-io/pact. I wouldn't say that Pact is a
> competitor to Cardano's Plutus so much as a fundamentally different
> approach.
>
> -Will
>
>
>  - Will
>
> ----------
> Will Martino
> WJMartino at gmail.com
> 203.887.6964 <(203)%20887-6964>
>
> Sent via Superhuman <https://sprh.mn/?vip=wjmartino@gmail.com>
>
>
> On Fri, Mar 09, 2018 at 9:57 PM, Takenobu Tani<takenobu.hs at gmail.com>wro
> te:
>
>> Hi,
>>
>> Before exploring Cardano's virtual machine, I explored Ethereum virtual
>> machine (EVM).
>> I'm sharing some figures I wrote for my self-study.
>>
>>   Ethereum EVM illustrated
>>   http://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf
>>   https://github.com/takenobu-hs/ethereum-evm-illustrated
>>
>> Haskell fits very well to DApps/Smart contracts :)
>>
>> Regards,
>> Takenobu
>>
>>
>> 2018-01-27 11:27 GMT+09:00 Takenobu Tani <takenobu.hs at gmail.com>:
>>
>>> Hi Gregory,
>>>
>>> Thank you for much information.
>>> I have heard Cardano, but I did not know the details.
>>>
>>> It's amazing!
>>>
>>> Although Ethereum VM is stack based virtual machine,
>>> Cardano's IELE(VM) is register based VM!, it's powerfull and beautiful!
>>> In addition, it is protected by semantics.
>>>
>>> Umm, High-level safety abstructed language (Haskell based) + register
>>> based VM (IELE) !
>>> It's amazing.
>>>
>>> Thank you for telling me details.
>>> I will explore this.
>>>
>>> Thank you very much,
>>> Takenobu
>>>
>>>
>>> 2018-01-27 10:22 GMT+09:00 Gregory Popovitch <greg7mdp at gmail.com>:
>>>
>>>> Probably you are aware of Cardano (https://www.cardanohub.org/en/home/),
>>>> a new generation blockchain platform which uses languages inspired from
>>>> Haskell. From the whitepaper at https://whycardano.com/:
>>>>
>>>> "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.
>>>>
>>>> Therefore, we have chosen to design a new language called Simon6
>>>> <https://whycardano.com/#footnote6> 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 *Composing
>>>> contracts: an adventure in financial engineering
>>>> <https://www.lexifi.com/files/resources/MLFiPaper.pdf>*.
>>>>
>>>> The principal idea is that financial transactions are generally
>>>> composed from a collection of foundational elements7
>>>> <https://whycardano.com/#footnote7>. 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.
>>>>
>>>> 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 new money out of thin air
>>>> <https://en.bitcoin.it/wiki/Value_overflow_incident> or transaction
>>>> malleability <https://en.bitcoin.it/wiki/Transaction_Malleability>.
>>>> Second, one can leave in extensions to add more elements by way of soft
>>>> forks if new functionality is required.
>>>>
>>>> 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 Plutus
>>>> <https://github.com/input-output-hk/plutus-prototype> as both a
>>>> general purpose smart contract language and also a special purpose DSL for
>>>> interoperability.
>>>>
>>>> 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."
>>>>
>>>> ------------------------------
>>>> *From:* Haskell-Cafe [mailto:haskell-cafe-bounces at haskell.org] *On
>>>> Behalf Of *Takenobu Tani
>>>> *Sent:* Friday, January 26, 2018 8:05 PM
>>>> *To:* Patrick Mylund Nielsen
>>>> *Cc:* haskell-cafe
>>>> *Subject:* Re: [Haskell-cafe] Haskell to Ethereum VM ?
>>>>
>>>> Hi Carter, Patrick,
>>>>
>>>> Thank you for reply.
>>>> Quorum is interesting!
>>>> It would be very nice to be able to describe Ethereum's contract with
>>>> Haskell DSL.
>>>> The characteristics about immutable and type will fit DApps.
>>>>
>>>> Thank you very much,
>>>> Takenobu
>>>>
>>>>
>>>>
>>>> 2018-01-27 2:55 GMT+09:00 Patrick Mylund Nielsen <haskell at patrickmn.com
>>>> >:
>>>>
>>>>> The Quorum[1] team has been dreaming about such a
>>>>> Haskell-beginner-friendly bytecode-generating DSL for a very long time.
>>>>> The user experience of writing applications in a language where
>>>>> pitfalls
>>>>> are so non-obvious is one of the biggest pain points of Ethereum in
>>>>> general.
>>>>>
>>>>> We would warmly welcome something like this, and would definitely look
>>>>> to use it in Quorum. (Our EVM is the same as public Ethereum.)
>>>>>
>>>>> [1]: A permissioned/non-PoW version of Ethereum with high throughput
>>>>> and
>>>>> privacy - https://github.com/jpmorganchase/quorum/
>>>>>
>>>>> On 1/26/2018 11:43 AM, Carter Schonwald wrote:
>>>>> > Hello Takenobu,
>>>>> > while theres definitely a lot of haskell code out there that deals
>>>>> with
>>>>> > ethereum (or implementing it!), i'm not aware of anything targeting
>>>>> the
>>>>> > evm isa from haskell or any other mature functional programming
>>>>> language
>>>>> >
>>>>> > On Fri, Jan 26, 2018 at 8:09 AM, Takenobu Tani <
>>>>> takenobu.hs at gmail.com
>>>>> > <mailto:takenobu.hs at gmail.com>> wrote:
>>>>> >
>>>>> >     Hi cafe,
>>>>> >
>>>>> >     Does anyone know about the code generator from Haskell's syntax
>>>>> to
>>>>> >     Ethereum VM language (bytecode)?
>>>>> >     That is, what corresponds to Solidity in Haskell.
>>>>> >
>>>>> >     Although Solidity is interesting, it's difficult for me to
>>>>> achieve
>>>>> >     quality and safety.
>>>>> >     Does such a project already exist?
>>>>> >
>>>>> >     Regards,
>>>>> >     Takenobu
>>>>> >
>>>>> >
>>>>> >
>>>>> >     _______________________________________________
>>>>> >     Haskell-Cafe mailing list
>>>>> >     To (un)subscribe, modify options or view archives go to:
>>>>> >     http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
>>>>> >     <http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe>
>>>>> >     Only members subscribed via the mailman list are allowed to post.
>>>>> >
>>>>> >
>>>>> >
>>>>> >
>>>>> > _______________________________________________
>>>>> > Haskell-Cafe mailing list
>>>>> > To (un)subscribe, modify options or view archives go to:
>>>>> > http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
>>>>> > Only members subscribed via the mailman list are allowed to post.
>>>>> >
>>>>>
>>>>
>>>>
>>>
>> _______________________________________________
>> Haskell-Cafe mailing list
>> To (un)subscribe, modify options or view archives go to:
>> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe Only
>> members subscribed via the mailman list are allowed to post.
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20180310/4eb9d584/attachment.html>


More information about the Haskell-Cafe mailing list