馃嚜馃嚫 Tutoriales de Marlowe: Marlowe en Blockly

Marlowe en Blockly

Hasta ahora en estos tutoriales nos hemos concentrado en la construcci贸n de contratos en la versi贸n textual de Marlowe, integrada en Haskell. Los contratos de Marlowe tambi茅n se pueden construir utilizando el entorno de programaci贸n visual Blockly, como describimos aqu铆.

C贸mo empezar

Para empezar a construir un proyecto Blockly en el Marlowe Playground, del que puedes obtener m谩s informaci贸n en la secci贸n sobre la visi贸n general del playground, selecciona New Project y luego Blockly para el tipo de proyecto. Ahora ver谩s una pantalla como la siguiente:

MT-5-1

Los contratos se ensamblan a帽adiendo componentes a los agujeros de los bloques. Para construir un contrato, tenemos que llenar el 煤nico agujero de nivel superior con un Contract, y los bloques para estos se encuentran haciendo clic en Contracts en el men煤 de la izquierda. Al hacer esto se muestran todos los diferentes bloques que construyen contratos, como se muestra aqu铆:

MT-5-2

Podemos seleccionar uno y arrastrarlo al 谩rea de edici贸n, que tiene un fondo punteado, as铆:

MT-5-3

y luego encajarlo en el agujero de nivel superior, de modo que estamos construyendo un contrato con un When como construcci贸n principal.

MT-5-4

A continuaci贸n, podemos repetir este proceso, a帽adiendo contratos y otros tipos de componentes -todos los cuales se muestran en el men煤 de la izquierda- para construir un contrato completo, es decir, un contrato que no tenga agujeros.

Rellenemos la informaci贸n del timeout y a帽adamos un contrato Close que se realizar谩 en caso de timeout:

MT-5-5

驴Qu茅 acci贸n debemos elegir ahora? De nuevo vemos todas las acciones posibles seleccionando Actions en el men煤:

MT-5-6

Si seleccionamos una acci贸n Deposit tenemos varios tipos de agujeros que llenar.

MT-5-7

Aqu铆 tenemos que elegir

  • Un Role para el depositante
  • Un Value que es el monto depositado 鈥
  • 鈥 del Token (a menudo ada )
  • D贸nde se va a depositar el dinero, dado por un Party , que es un Role o una Public Key .

Al rellenar algunos de ellos tenemos que rellenar tambi茅n un campo de texto, o un n煤mero, como se muestra en el resultado final aqu铆.

MT-5-8

Por 煤ltimo, tenemos que decidir cu谩l es el contrato de continuaci贸n : 驴qu茅 hace el contrato a continuaci贸n? Es otro contrato. Aqu铆 se completa como un pago:

MT-5-9

Ejercicios

En Blockly, completa por ti mismo la construcci贸n del contrato anterior.

驴Cu谩l es el efecto del contrato de ejemplo? En particular, 驴cu谩les son los pagos realizados por el contrato?

Editar Blockly

Los contratos de Blockly se pueden manipular y editar mediante gestos visuales y atajos de teclado.

MT-5-10

  • Los bloques pueden ser arrastrados desde los agujeros, as铆 como ser insertados.
  • Hay un men煤 de clic en el bot贸n derecho , como se ve en la imagen de arriba, que ofrece una serie de opciones.
  • Los t铆picos atajos de edici贸n son operativos, por ejemplo DEL, 鈱楥, 鈱榁, y 鈱榅 en Mac OS.

漏 Copyright 2020, IOHK Revision 34aa9c32.

Encuentra una copia oficial de este documento aqu铆:

https://alpha.marlowe.iohkdev.io/doc/marlowe/tutorials/playground-blockly.html

https://docs.cardano.org/projects/plutus/en/latest/marlowe/tutorials/playground-blockly.html

M谩s traducciones de Cardano en: Cardano For The World