Zen言語のasync標準ライブラリ紹介〜event.Batch①〜

はじめに けっこう標準ライブラリが充実しているわけですが、ドキュメントがないのがもったいないですね。 まとまった時間が取れないので、ちょこちょこ書いていくシリーズです。 リクエストあれば、優先する、かも? async関連のライブラリはstd.event下に…

Zen言語のasync標準ライブラリ紹介〜event.Channel②〜

けっこう標準ライブラリが充実しているわけですが、ドキュメントがないのがもったいないですね。 まとまった時間が取れないので、ちょこちょこ書いていくシリーズです。 リクエストあれば、優先する、かも? async関連のライブラリはstd.event下にあります。…

Zen言語のasync標準ライブラリ紹介〜event.Channel①〜

はじめに けっこう標準ライブラリが充実しているわけですが、ドキュメントがないのがもったいないですね。 まとまった時間が取れないので、ちょこちょこ書いていくシリーズです。 リクエストあれば、優先する、かも? async関連のライブラリはstd.event下に…

Zen言語の標準ライブラリ紹介〜progress〜

はじめに けっこう標準ライブラリが充実しているわけですが、ドキュメントがないのがもったいないですね。 まとまった時間が取れないので、ちょこちょこ書いていくシリーズです。 リクエストあれば、優先する、かも? 今日はコンソールにプログレスバーを表…

Zen言語の標準ライブラリ紹介〜rand②〜

はじめに けっこう標準ライブラリが充実しているわけですが、ドキュメントがないのがもったいないですね。 まとまった時間が取れないので、ちょこちょこ書いていくシリーズです。 リクエストあれば、優先する、かも? 乱数について続きを見ていきましょう。 …

Zen言語の標準ライブラリ紹介〜rand①〜

はじめに けっこう標準ライブラリが充実しているわけですが、ドキュメントがないのがもったいないですね。 まとまった時間が取れないので、ちょこちょこ書いていくシリーズです。 リクエストあれば、優先する、かも? 乱数について見ていきましょう。 std.ra…

Zen言語の標準ライブラリ紹介〜lazy〜

はじめに けっこう標準ライブラリが充実しているわけですが、ドキュメントがないのがもったいないですね。 まとまった時間が取れないので、ちょこちょこ書いていくシリーズです。 リクエストあれば、優先する、かも? グローバルなデータをスレッド安全に初…

Zen言語の標準ライブラリ紹介〜sort②〜

はじめに けっこう標準ライブラリが充実しているわけですが、ドキュメントがないのがもったいないですね。 まとまった時間が取れないので、ちょこちょこ書いていくシリーズです。 リクエストあれば、優先する、かも? ソート関係ですが、ソート本体以外にstd…

Zen言語の標準ライブラリ紹介〜sort①〜

はじめに けっこう標準ライブラリが充実しているわけですが、ドキュメントがないのがもったいないですね。 まとまった時間が取れないので、ちょこちょこ書いていくシリーズです。 リクエストあれば、優先する、かも? ソート関係です。 次の3つの関数を紹介…

Zen言語の標準ライブラリ紹介〜time〜

はじめに けっこう標準ライブラリが充実しているわけですが、ドキュメントがないのがもったいないですね。 まとまった時間が取れないので、ちょこちょこ書いていくシリーズです。 リクエストあれば、優先する、かも? 今日は時間関係です。 std.time. std.ti…

Zen言語の標準ライブラリ紹介〜generic〜

はじめに けっこう標準ライブラリが充実しているわけですが、ドキュメントがないのがもったいないですね。 まとまった時間が取れないので、ちょこちょこ書いていくシリーズです。 リクエストあれば、優先する、かも? どんな型でも比較できる便利な奴ら、gen…

Zen言語の標準ライブラリ紹介〜Markdown〜

はじめに けっこう標準ライブラリが充実しているわけですが、ドキュメントがないのがもったいないですね。 まとまった時間が取れないので、ちょこちょこ書いていくシリーズです。 リクエストあれば、優先する、かも? MarkdownをパースしてHTML出力します。 …

Zen言語の標準ライブラリ紹介〜コンソール出力の着色〜

はじめに けっこう標準ライブラリが充実しているわけですが、ドキュメントがないのがもったいないですね。 まとまった時間が取れないので、ちょこちょこ書いていくシリーズです。 リクエストあれば、優先する、かも? 用事していたら時間なくなったので、く…

Zen言語の標準ライブラリ紹介〜排他制御①〜

はじめに けっこう標準ライブラリが充実しているわけですが、ドキュメントがないのがもったいないですね。 まとまった時間が取れないので、ちょこちょこ書いていくシリーズです。 リクエストあれば、優先する、かも? 排他制御系も色々揃ってございます。 ①…

Zen言語の標準ライブラリ紹介〜ascii〜

はじめに けっこう標準ライブラリが充実しているわけですが、ドキュメントがないのがもったいないですね。 まとまった時間が取れないので、ちょこちょこ書いていくシリーズです。 リクエストあれば、優先する、かも? ASCII文字をうにゃうにゃします。 std.a…

Zen言語の標準ライブラリ紹介〜Buffered I/O Stream〜

はじめに けっこう標準ライブラリが充実しているわけですが、ドキュメントがないのがもったいないですね。 まとまった時間が取れないので、ちょこちょこ書いていくシリーズです。 リクエストあれば、優先する、かも? ファイルへの入出力をバッファリングし…

Zen言語でパーサコンビネータ(1)

はじめに Java パーサコンビネータ 超入門を読んで、やりたくなったので、やってみました。 コードはこちらです。 (1)としましたが、続くかどうかは知りません。 overview 文字列に対して、u8もしくはBuffer (u8の可変長配列) を返すパーサを実装しています…

2019年振り返りと2020の目標

はじめに ポエムです。 なすべきことがあるので、手短にいきましょう。 2019年振り返り ちなみに、年始に立てた目標は、次の通りでした。 1年間メンテせずに放っておくとは、手抜きも良いところですね。 tomo-wait-for-it-yuki.hatenablog.com LLVMのバック…

Rust no-stdのasync完全理解を目指そう!

はじめに この記事はRust Advent Calendar 2019の17日目として書きました。 組込みRust界の神japaricさんがno-std環境でasyncを使うPoCレポジトリを公開しています。 github.com 理解できるかどうか非常に自信がありませんが、これは見てみるしかありません…

OS自作に役立つZen言語機能10選!

はじめに 本記事は自作OS Advent Calendar 2019の4日目として書きました。 とうとう公開されましたねZen言語! zen-lang.org 私は組込み屋さんで、OS自作を嗜んでいますが、ベアメタルでプログラミングするにあたり、Zen言語は非常に使いやすい機能を兼ね備…

技術書典7にて「Zenbedded〜Zen言語で作る組込みシステム〜」を頒布します

はじめに 2019年9月22日(日)、技術書典7にて、Zenbedded〜Zen言語で作る組込みシステム CPUリセットからUART編〜を頒布いたします。 Zenbedded表紙 頒布物情報 タイトル Zenbedded〜Zen言語で作る組込みシステム CPUリセットからUART編〜 サイズ B5版 ページ…

技術書典7にて「The Zen Book〜プログラミング言語Zen入門〜」を頒布します

はじめに Zen言語公式ページはこちら 2019年9月22日(日)、技術書典7にて、The Zen Book〜プログラミング言語Zen入門〜を頒布いたします。 The Zen Book表紙 頒布物情報 タイトル The Zen Book〜プログラミング言語Zen入門〜 サイズ B5版 ページ数 290ページ …

技術書典7でRustが関連する本/サークル一覧メモ

はじめに 随時、更新します。抜けや、間違いがあればご連絡下さい。 techbookfest.org 既刊ですが、私も「組込み/ベアメタルRustクックブック」を頒布しますので、よろしくお願いします(宣伝)。 新刊 い35C: esproject(エスプロジェクト) techbookfest.o…

VxWorksの脆弱性「URGENT11」のテクニカルホワイトペーパーを読む①

はじめに 7月末にVxWorksの脆弱性発見が公開されました。 armis.com 日本語関連記事 VxWorksは組込み機器では非常に有名なRTOSで、20億以上のデバイスに搭載されています。 今回の脆弱性URGENT11で影響を受けるデバイスは2億個以上であると報告されています…

技書博出展レポート〜初めての同人誌執筆で組込みRustの本を頒布しました〜

はじめに 記憶の新しいうちに、経緯などをまとめておきます。 自分用メモの側面が強いですが、今後初めて同人誌を頒布される方の参考になると嬉しいです。 表紙 BOOTHで物理本と電子版を販売しているので、もし良ければお買い求め下さい。 (物理本は倉庫への…

7/27(土) 技書博で組込み/ベアメタルRustクックブックを販売します!

はじめに 宣伝です! 来週開催される技術書同人誌博覧会にて、組込み/ベアメタルRustクックブックを販売します。 A-9 AQUAXISさんのブースにご一緒させて頂きます。 ブース主の石原ひでみさんはFPGAの薄い本とMarkdown組版の本を、みつきんさんはNuttxの本を…

コネクトフリー求人情報[2019/7]

はじめに コネクトフリー株式会社ではエンジニアを募集しています。 会社のホームページが用意できるまでの間、こちらに求人情報を掲載します。 コネクトフリー株式会社は、レガシーなメモリ寄りのコンピュータシステムを刷新し、新しいCPU寄りの社会インフ…

LLVM IRファイルを読み込む

はじめに ファイルに出力されたLLVM IRをC++で読み込んで遊んでみます。 環境 $ clang++ --version clang version 8.0.1-svn360950-1~exp1~20190517004233.70 (branches/release_80) Target: x86_64-pc-linux-gnu Thread model: posix InstalledDir: /usr/bi…

Rust × 組込みで前代未聞のInterfaceオフ会レポート

はじめに 昨日、2019年6月17日、巣鴨のCQ出版社様セミナールームにおいて記念すべき組込みRustのオフ会が開催されました! 今回のオフ会は、雑誌掲載前にオフ会を開催する、という前代未聞のオフ会、とのことでした。 inteface-meet-up.connpass.com 非常に…

WebAssembly Micro RuntimeでRustアプリをマイコンで動かす!

はじめに 前回、もう一歩のところだったのですが、RAMが2MB搭載されていないと動かない状態でした。 tomo-wait-for-it-yuki.hatenablog.com 私はそんなマイコン持っていないため、今回は、256KB RAMが搭載されているマイコン (これも高性能品ですが) 上でRus…