所要時間たった4分、Plutus/Marloweで遊ぼ!(スマートコントラクト体験・プログラミングスキル不要)

ということで、この前ミートアップをさせていただきましたが、かなり早足でしたし、ご参加できなかった方もいらっしゃいましたので、新たに記事にすることにしました…

非常に簡単に遊べます、早速トライしましょう!

1.Plutusでクラウドファウンディングのスマートコントラクトを作って遊ぼ!

STEP1:こちらのテストネットサイトにアクセスします!

STEP2:①→②…と番号順にクリック!(ここでコードを実行しやすいように翻訳してあげています。)

STEP3:①→②…と番号順にクリック!(ここで、実行するお財布とそのお財布に入っているお金の初期設定をしてあげています。)

STEP4:こんな感じで数字埋めてみます

ここではウォレット1の持ち主が10ADAを20スロットまでに集めるクラウドファウンディングを行い、ウォレット2の持ち主とウォレット3の持ち主が各々それに6ADAずつ寄付する、というシナリオを立てています。

STEP5:①→②…と番号順にクリック!(最後に時間経過を設定してあげます、忘れがちですがこれを忘れると機能しません!)

STEP6:結果が出てきます!

ちゃんと10ADA以上集まったので成功し、ウォレット1に12ADA集まっています。これが例えば、ウォレット2の送るADAの額を1ADAにすると、10ADA集まっていないということで、クラウドファウンディング失敗、ADAが返金される結果が出てきます。

STEP7:なんかこれだと「プログラムした感」がないな…!という方のために簡単なプログラムがあります。これを上のSTEP2のところで打って、実行してみてください!

import Playground.Contract (mkFunctions, printSchemas)
import Language.PlutusTx.Prelude
import Playground.Contract
import Wallet(MonadWallet, logMsg)

welcomeGoguen :: MonadWallet m => m ()
welcomeGoguen = logMsg “The Japanese community is ready to welcome Goguen!”

$(mkFunctions [‘welcomeGoguen])

これを実行すると…?

出ました!本当になんてことないプログラムですが、好きなメッセージを表示させることができます。

2.Marloweでエクスクローのスマートコントラクトを作って遊ぼ!

STEP1:こちらのテストネットサイトにアクセスします!

STEP2:①→②…と番号順にクリック!(ここでコードを実行しやすいように翻訳してあげています。)

STEP3:①→②…と番号順にクリック!

アリスがボブから時計を買い、アリスはその時計をしっかり手に入ってからお金を渡そうと思っています。ボブはアリスが時計だけ持っていくことを恐れています。アリスもボブも信頼する中立なキャロルを使ってこれを解決しようとしています。

そこでアリスは450ADAをプログラムにロックし、その後にアリスとボブが、アリスに返金か、ボブに送金か、値をプログラムに送ります。もし、意見が相違したらキャロルがアリスに返金か、ボブに送金か、値をプログラムに送ります。

STEP4:結果が出てきます!

ここでは、アリスもボブも「アリスに送金」という値0を送ったので、それが成立し、ボブに450ADAが送金されています。

STEP5:BLOCKLYにして見ることもできます!パズルのようにスマートコントラクトが組めます。

このパズルのようなやつ、ぜひ、いじって遊んでみてください!

以上です!

あまりにも簡単だったと思います、ぜひ値を変えてみたり、違うケースのもので遊んでみたりしてみてください!

ぜひ、今後もこのような記事を書いていこうかなと思っています、よろしければステークプールへの委任より、CardanoZを応援してもらえますと嬉しいです!この委任の記事もバグ対処法含めて、またステーキング方法も10倍簡素化となるよう大きく書き直しましたので、今まで心が折れた人も再確認してみて下さい!

また、CardanoADA非公式オープンチャットコミュニティも盛況で690人に達しようとしています!テレグラムに近い、匿名で(LINE本アカウントを知られることなく)参加できるLINEのチャットです。

さらに3/7にミートアップがあり、私もこれに参加(https://forum.cardano.org/t/topic/30821)します。ステーキングの参加方法がよくわからない人の最後の駆け込み寺ともなってますのでぜひ駆け込み下さい!

それではまた!

1 Like