summaryrefslogtreecommitdiff
path: root/1d/7af3ac1bc9df6724cb38f5ee9907e798813c34
blob: 4659ab38c081dc0fd63f3e08b6b28f70527ab1b6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
Return-Path: <lf-lists@mattcorallo.com>
Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org
	[172.17.192.35])
	by mail.linuxfoundation.org (Postfix) with ESMTPS id 931D5F79
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Sun, 14 Jan 2018 22:42:03 +0000 (UTC)
X-Greylist: from auto-whitelisted by SQLgrey-1.7.6
Received: from mail.bluematt.me (mail.bluematt.me [192.241.179.72])
	by smtp1.linuxfoundation.org (Postfix) with ESMTPS id DB76B12E
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Sun, 14 Jan 2018 22:42:02 +0000 (UTC)
Received: from [28.54.42.19] (99-203-11-31.pools.spcsdns.net [99.203.11.31])
	by mail.bluematt.me (Postfix) with ESMTPSA id 1DAF41A03C4;
	Sun, 14 Jan 2018 22:42:00 +0000 (UTC)
Date: Sun, 14 Jan 2018 22:41:55 +0000
In-Reply-To: <CAD438HvzYAMVTU8A0OiNnj2nvYgMApdS8NNfzE86Ae_OsTfuaA@mail.gmail.com>
References: <CAD438HvzYAMVTU8A0OiNnj2nvYgMApdS8NNfzE86Ae_OsTfuaA@mail.gmail.com>
MIME-Version: 1.0
Content-Type: multipart/alternative;
	boundary="----MEGZA5R1AZITXDTAMS29W7HO7X1LQN"
Content-Transfer-Encoding: 7bit
To: Daniel Robinson <danrobinson010@gmail.com>,
	Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org>,
	Daniel Robinson via bitcoin-dev <bitcoin-dev@lists.linuxfoundation.org>
From: Matt Corallo <lf-lists@mattcorallo.com>
Message-ID: <1CCF3C59-64DB-462F-AC62-AEA77FA01571@mattcorallo.com>
X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,HTML_MESSAGE
	autolearn=ham version=3.3.1
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on
	smtp1.linux-foundation.org
Subject: Re: [bitcoin-dev] Ivy: a higher-level language targeting Bitcoin
	Script
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org>
List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>,
	<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe>
List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/>
List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org>
List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help>
List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>,
	<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe>
X-List-Received-Date: Sun, 14 Jan 2018 22:42:03 -0000

------MEGZA5R1AZITXDTAMS29W7HO7X1LQN
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable

I'm curious if you've considered adding some form of compiler-time enforcem=
ent to prevent witness malleability? With that, Ivy could help to resolve f=
or it's users one of the things that can make Bitcoin scripts more complica=
ted to write, instead of simply type-checking and providing a high-level la=
nguage mapped 1-to-1 with Bitcoin script=2E

On December 18, 2017 8:32:17 PM UTC, Daniel Robinson via bitcoin-dev <bitc=
oin-dev@lists=2Elinuxfoundation=2Eorg> wrote:
>Today, we=E2=80=99re releasing Ivy, a prototype higher-level language and
>development environment for creating custom Bitcoin Script programs=2E
>You
>can see the full announcement here
><https://blog=2Echain=2Ecom/ivy-for-bitcoin-a-smart-contract-language-tha=
t-compiles-to-bitcoin-script-bec06377141a>,
>or check out the docs <https://docs=2Eivy-lang=2Eorg/bitcoin/> and source
>code
><https://github=2Ecom/ivy-lang/ivy-bitcoin>=2E
>
>Ivy is a simple smart contract language that can compile to Bitcoin
>Script=2E
>It aims to improve on the useability of Bitcoin Script by adding
>affordances like named variables and clauses, static (and
>domain-specific)
>types, and familiar syntax for function calls=2E
>
>To try out Ivy, you can use the Ivy Playground for Bitcoin
><https://ivy-lang=2Eorg/bitcoin/>, which allows you to create and test
>simulated contracts in a sandboxed environment=2E
>
>This is prototype software intended for educational and research
>purposes
>only=2E Please don't try to use Ivy to control real or testnet Bitcoins=
=2E

------MEGZA5R1AZITXDTAMS29W7HO7X1LQN
Content-Type: text/html;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable

<html><head></head><body>I&#39;m curious if you&#39;ve considered adding so=
me form of compiler-time enforcement to prevent witness malleability? With =
that, Ivy could help to resolve for it&#39;s users one of the things that c=
an make Bitcoin scripts more complicated to write, instead of simply type-c=
hecking and providing a high-level language mapped 1-to-1 with Bitcoin scri=
pt=2E<br><br><div class=3D"gmail_quote">On December 18, 2017 8:32:17 PM UTC=
, Daniel Robinson via bitcoin-dev &lt;bitcoin-dev@lists=2Elinuxfoundation=
=2Eorg&gt; wrote:<blockquote class=3D"gmail_quote" style=3D"margin: 0pt 0pt=
 0pt 0=2E8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;=
">
<div dir=3D"ltr"><div dir=3D"auto">Today, we=E2=80=99re releasing Ivy, a p=
rototype higher-level language and development environment for creating cus=
tom Bitcoin Script programs=2E You can see the full announcement <a href=3D=
"https://blog=2Echain=2Ecom/ivy-for-bitcoin-a-smart-contract-language-that-=
compiles-to-bitcoin-script-bec06377141a" target=3D"_blank">here</a>, or che=
ck out the <a href=3D"https://docs=2Eivy-lang=2Eorg/bitcoin/" target=3D"_bl=
ank">docs</a>&nbsp;and&nbsp;<a href=3D"https://github=2Ecom/ivy-lang/ivy-bi=
tcoin" target=3D"_blank">source code</a>=2E</div><div dir=3D"auto"><br></di=
v><div dir=3D"auto">Ivy is a simple smart contract language that can compil=
e to Bitcoin Script=2E It aims to improve on the useability of Bitcoin Scri=
pt by adding affordances like named variables and clauses, static (and doma=
in-specific) types, and familiar syntax for function calls=2E</div><div dir=
=3D"auto"><br></div><div dir=3D"auto">To try out Ivy, you can use the <a hr=
ef=3D"https://ivy-lang=2Eorg/bitcoin/" target=3D"_blank">Ivy Playground for=
 Bitcoin</a>, which allows you to create and test simulated contracts in a =
sandboxed environment=2E</div><div dir=3D"auto"><br></div><div dir=3D"auto"=
>This is prototype software intended for educational and research purposes =
only=2E Please don't try to use Ivy to control real or testnet Bitcoins=2E<=
/div><div dir=3D"auto"><br></div></div>
</blockquote></div></body></html>
------MEGZA5R1AZITXDTAMS29W7HO7X1LQN--