public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: Null Null <ebbe52e5@gmail•com>
To: Gijs van Dam <gvandam@gmail•com>,
	Bitcoin Protocol Discussion
	<bitcoin-dev@lists•linuxfoundation.org>
Subject: Re: [bitcoin-dev] Is there a tool like Ethereum EVM at present for Bitcoin script?
Date: Thu, 26 Aug 2021 10:43:27 +0800	[thread overview]
Message-ID: <B6ADF0FE-0FCD-4564-A78E-6FA8310924D0@gmail.com> (raw)
In-Reply-To: <CAGB645aYFvxBctxXHwH0bB=qRMTaEW263H5BxpT8b27i9S3B7w@mail.gmail.com>

thanks for you suggestion, Gijs.

I spent some time learning miniscript, and there are some problems that need to confirm for me:

1. Is miniscript a brand new Bitcoin scripting language?
2. If I use miniscript, do I need to compile it into a Bitcoin OP_CODE script? If so, how to do that ? has someone written a compiler? 
I found that @sipa has open sourced a compiler implemented in C++ on github( https://github.com/sipa/miniscript ). This should translate the policy language into miniscript;

> 2021年8月24日 下午3:36,Gijs van Dam via bitcoin-dev <bitcoin-dev@lists•linuxfoundation.org> 写道:
> 
> Hi,
> 
> 
> Bitcoin does not have a virtual machine. But you do have [Miniscript][1], [Min.sc][2], [Simplicity][3] and [Sapio][4]. These are all higher level languages that compile to Bitcoin Script. Sapio is "just" Rust, so that might fit your setting best.
> 
> By the way, this question also has an answer on [Bitcoin Stackexchange][5] which is a great resource for questions like this.
> 
> [1]: http://bitcoin.sipa.be/miniscript/
> [2]: https://min.sc/
> [3]: https://github.com/ElementsProject/simplicity
> [4]: https://learn.sapio-lang.org/
> [5]: https://bitcoin.stackexchange.com/questions/108261/is-there-a-tool-like-ethereum-evm-at-present-for-bitcoin-script
> 
> On Tue, Aug 24, 2021 at 2:55 PM Null Null via bitcoin-dev <bitcoin-dev@lists•linuxfoundation.org> wrote:
> Hi all,
> 
> Is there a tool like Ethereum EVM at present? Users can write bitcoin scripts in a syntax just like python(or like other programming language); through this tool, they can be translated into bitcoin original scripts; it sounds like a new programming language has been invented.
> 
> In my opinion, Bitcoin script programming is based on reverse Polish expression; this is not friendly to programmers;
> 
> In fact, Bitcoin's opcode expression ability is very rich, and it may be unfriendly, which has affected the promotion of Bitcoin in the technical community.
> 
> Hope for hearing some voice about this.
> 
> Best wish.
> 
> _______________________________________________
> bitcoin-dev mailing list
> bitcoin-dev@lists•linuxfoundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
> _______________________________________________
> bitcoin-dev mailing list
> bitcoin-dev@lists•linuxfoundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev



  parent reply	other threads:[~2021-08-26  2:43 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-24  3:39 Null Null
2021-08-24  7:36 ` Gijs van Dam
2021-08-24 13:08   ` Andrew Poelstra
2021-08-26  8:12     ` Oleg Andreev
2021-08-26 10:26     ` Jeremy
2021-08-26  2:43   ` Null Null [this message]
2021-08-26 13:09 Michael Folkson
2021-08-26 20:03 ` Jeremy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=B6ADF0FE-0FCD-4564-A78E-6FA8310924D0@gmail.com \
    --to=ebbe52e5@gmail$(echo .)com \
    --cc=bitcoin-dev@lists$(echo .)linuxfoundation.org \
    --cc=gvandam@gmail$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox