Marimo.solを読む会

#juneboku > topics > Marimo.solを読む会
created: 2022-09-19 / updated: 2022-09-25

https://marimo.life/ のSmart Contractのソースコードを読む会をやった。chanohaといっしょに読み読み。

Marimo.solは200行もないくらいの量で、Solidityを学ぶ教材としてもいい感じ。


  function getCurrentSize(uint256 tokenId) public view returns (uint16) {
    require(_exists(tokenId), "no token");
    uint256 elapsedTime = getElapsedTimeFromLastWaterChanged(tokenId);
    uint256 coefficient = 90000 minutes;
    // add constacont(1440, 33840, 79920, 94320) as the initial value when elapsedTime is zero in each cases
    if (elapsedTime <= 20 days) {
      return uint16((100 * elapsedTime) / coefficient  + getLastSize(tokenId));
    } else if (elapsedTime <= 50 days) {
      return uint16((95 * elapsedTime + 1440 * 60 * 100) / coefficient +  getLastSize(tokenId));
    } else if (elapsedTime <= 80 days) {
      return uint16((50 * elapsedTime + 33840 * 60 * 100) / coefficient + getLastSize(tokenId));
    } else if (elapsedTime <= 100 days) {
      return uint16((10 * elapsedTime + 79920 * 60 * 100) / coefficient + getLastSize(tokenId));
    } else {
      return uint16(getLastSize(tokenId) + (94320 * 60 * 100 / coefficient));
    }
  }
  • 関数 getCurrentSize の実装がおもしろい
    • 最後に水を換えた時点でのSizeが記録されていて、そこからの差分は計算によって導出し、現在のSizeを返す
    • 現在のSizeをバッチ処理で永続化することもできるが、ブロックチェーンへの書き込みにはコストがかかるのでなるべく書き込まないという工夫がされていると理解した

Mentioned in days

In 2022-09-18 Sun Read full day →

今日の暮らし

正午過ぎに那珂川河畔公園のあたりを通ったらあいみょんさんの『ハルノヒ』のメロディが聴こえてきて、音楽イベントでもやっているのか?となってステージのところを見に行くことにした。このあとに用事があったので少ししか滞在できなかったけれど、ドラムのパフォーマンスを4曲ほど見ることができてとてもよかった。小学校5年生のドラマーがNirvanaの『Smells Like Teen Spirit』を叩いていたのがおもしろかった。選曲が渋い。

Nirvana - Smells Like Teen Spirit (Official Music Video) - YouTube

帰宅後に調べてみたところ、ReNASU Fes Vol.1ってイベントが開催されていたようだ。

会場にはナスライガーの姿もあった。参加していたのだねぇ。

@nasuriger: Fes行くぜっ!
https://pbs.twimg.com/media/Fc56sPyaAAEvVgf.jpg

ナスライガーがイベント終了後にだんらんでいい肉を食べていておもしろかった。

@nasuriger: 今日は焼肉だんらんで大奮発してしまったwww

午後はchanohaとビデオチャットをつないでMarimo.solを読む会をやった。詳細はページに記す。

夕方にフォーラム那須塩原に行って映画『さかなのこ』を妻といっしょに観た。シアターに着席した直後に妻がポップコーンを盛大にこぼしておもしろかった。映画はよかったなあ。さかなクンさんのことをますます好きになったし、ひとりひとりの個性が尊重される社会をつくっていくぞ、と思った。

台風 14号「ナンマドル」(Nanmadol) がやってくるということで、火曜日と水曜日の予定をキャンセルした。楽しみにしていた予定だったので、残念だなあ。こればっかりは仕方ないね。

家から出れなくなっても大丈夫なように食料を買い込み、明日に食べる用のスープカレーを仕込んでおいた。ごろごろ野菜で作るスープカレー用スープのお世話になるぞい。

Archives : 2,609 days