タグ ZIG
人気順 10 users 50 users 100 users 500 users 1000 usersHaskellでゲームボーイエミュレータ - bercriber’s diary
Haskell Advent Calendar 2024 3日目の記事です。 TypescriptやZigでゲームボーイエミュレータを書いたことがあったのでHaskellでも試して見ました。CPUまで書いて力尽きたのでゲームは遊べません。自分でゲームボーイエミュレータ書いてみたいという方はgbdev.ioを見ればだいたいなんとなくおおよそたぶんわかるかと思... 続きを読む
Writing Hypervisor in Zig - Writing Hypervisor in Zig
Writing Hypervisor in Zig Ymir, the Type-1 Baremetal Hypervisor Writing Hypervisor in Zig は Zig 言語を使いフルスクラッチで Type-1 Hypervisor を実装しようというブログシリーズです。 OS よりも低いレベルで動作するベアメタル Hypervisor を実装するにあたり、ブートローダ・カーネル・VMM の各コンポーネン... 続きを読む
C、C++の後継「Zig」が“プログラミングの未来”なのはなぜか
関連キーワード プログラマー | プログラミング 「Zig」は「C」「C++」の後継を目指す比較的新しいプログラミング言語だ。現代的な言語設計と安全性を取り入れており、さまざまなメリットを備える。Zigはプログラミング言語の“一つの展望”を映し出す存在だ。Zigの主なメリット5つのうち、本稿は5つ目を取り上げる。 「Zi... 続きを読む
C++でもRustでもなく「Zig」が必要なのはなぜか
関連キーワード プログラマー | プログラミング 機械語に近い「低水準言語」を扱う開発者の心をつかみそうな新しいプログラミング言語がある。その名を「Zig」という。2024年7月時点で完全版はまだ公開されていないが、開発が盛んで、コミュニティーの熱気もある。 なぜ今新しいプログラミング言語が必要なのか。より具... 続きを読む
Zig探訪 - comptime編
イントロ さあ、やって参りました。 第1回Zig探訪のお時間です。 今回担当するのは、Zigを使い始めて早くも半年・永遠のニートことsmallkirbyです。 Zig探訪では、Zigの機能や特徴の中で面白いんじゃないかと思うものをピックアップして紹介していきます。 紹介しないこともあります。 第1回のテーマは、Zigの中でも特に... 続きを読む
新通貨ジンバブエ・ゴールド、波乱のスタート 旧通貨は無価値に
ジンバブエの首都ハラレでジョン・ムシャヤバンフ中央銀行総裁が披露した新通貨ジンバブエ・ゴールドの紙幣(2024年4月5日撮影)。(c)Jekesai NJIKIZANA / AFP 【4月10日 AFP】金を裏付けとしたジンバブエの新通貨ジンバブエ・ゴールド(ZiG)が今週、波乱のスタートを切った。店舗は米ドルでの支払いしか受け付けず、銀... 続きを読む
GitHub - gvcgo/version-manager: 🔥🔥🔥 A general version manager for multiple sdks, such as Java, Go, Node.js, Deno, Bun, .Net, Python, PyPy, PHP, Rust, Kotlin, Scala, Groovy, Flutter, Julia, Zig, V, Typst. A much better choice than vfox, fnm, gvm,
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert 続きを読む
ZigでWriting an OS in 1,000 Linesをやる
ZigでWriting an OS in 1,000 Linesをやる #2023-11-21 自作 OS で学ぶマイクロカーネルの設計と実装(通称エナガ本)の補足資料として公開されているWriting an OS in 1,000 Linesを、できるだけZigでやってみることにした。 目次成果物 #repositoryは以下。 さいしょに #エナガ本は一通り読んでいたのだが、機能に対して... 続きを読む
VSCodeがWebAssemblyの実行時デバッグに対応。C/C++やRust、Zigなどのソースコードと関連付け、変数参照、ブレークポイントなど可能に
VSCodeがWebAssemblyの実行時デバッグに対応。C/C++やRust、Zigなどのソースコードと関連付け、変数参照、ブレークポイントなど可能に マイクロソフトは、オープンソースで開発しているコードエディタ「Visual Studio Code」(以下、VSCode)の最新版となる2023年9月版(バージョン1.83)で、JavaScriptデバッガがWebAss... 続きを読む
[全編無料][鋭意執筆中] 他言語習得者がとりあえず使えるようになるZig
公式ドキュメントを私的に噛み砕きつつ、いくつかのコラムを添えて、Zigに入門する本です。 この本を読めばZigの機能を網羅できるわけではありませんが、取っ掛かりがつかめる様になると思います。 なお、この本は現在も鋭意執筆中ですので、未完成の章があったり、情報が書き加えられる可能性があります。 続きを読む
「ZigはCよりも速いです。」をVector/SIMD最適化で検証する
「パフォーマンスについて言えば、ZigはCよりも速いです。」 この一文は Zig 言語の公式サイトの詳細な概要に実際に書いてある文章です。 その理由としていくつか挙げた上で最後にちらっと「Zig は SIMD ベクトル型を直接公開しており、移植性の高いベクトル化コードを簡単に記述することができます。」と書いてあります... 続きを読む
Zigでコンテナランタイム作ってみた
テクニカルライター2年生 これまでやってきたこと、感じたこと / Introduction to technical writer job on LINE by a second year writer 続きを読む
ZigのOpenCVライブラリ「zigcv」を作っている
この記事内では、静止画の処理を行うために、STBライブラリを用いた。 こうなると次は動画の処理を行いたくなるものだ。 ... ならばOpenCVをZigから使えるようにしようではないか。 OpenCVのCバインディングを作る OpenCVはC++で書かれているので、Zigから関数を呼び出すにはCバインディングを作る必要がある。 1からOp... 続きを読む
Zig の文書読んで所感を記す - Qiita
これは何? Zig を学ぼうと 公式文書 (0.91時点) を読んでいるんだけど、読みながら思ったことを記していく。 その前に Zig への言及が最近多いなぁ、でもシンプルな言語だって言うしまあどうでもいいかなぁ、ぐらいの気持ちでいたんだけど、ZigはCMakeの代替となるか を読んで、俄然興味が湧いてきて、じゃあ読んでみる... 続きを読む
Zigで簡単クロスコンパイル 2022 - k0kubun's blog
僕は以下の3つのツールを複数プラットフォーム向けにクロスコンパイルしてバイナリ配布しており、以下のように全て異なる言語で開発している。 Go: sqldef Rust: xremap mruby: mitamae クロスコンパイルに苦労している話をするとZigを使ってみたらいいんじゃないかと言われることがあり、周りでもZigが何となく流行り始... 続きを読む
ZigでISUCON 12 の予選をCGOクロスコンパイルする - ぷらすのブログ
Zig を使って CGO クロスコンパイルする実際にベンチマーカーを実行してみるDocker を使ってビルドした場合Zig を使ってビルドした場合おわりにこんにちは、@p1ass です。 前日投稿した記事「ISUCON 12 の予選に参加して、7 位で本選進出を決めました」にて、CGO クロスコンパイルに苦労した話をしました。 その後色々調... 続きを読む
世界のプログラミング言語(44) シンプルで現代的なZig言語、RustやC++が複雑すぎると嘆く人の福音となるか
Zigは2015年に登場した新しいオープンソースのプログラミング言語です。Go言語やRust言語のように、C言語の置き換えを目標にしたコンパイラ言語です。その最大の特徴はシンプルであることです。確かに、マクロもプリプロセッサもありませんが、現代的な言語に仕上がっています。最近話題になることが増えてきたので試し... 続きを読む
ZigはCMakeの代替となるか
既存のプロジェクトで使用しているコンパイラを置き換えるだけで、Zigに付属しているCコンパイラを利用できる。 クロスビルドが標準で可能 上でも述べた通り、Zigは標準でクロスコンパイルが可能である。 Zig libcのTaget一覧 ❯ zig targets | jq ".libc" [ "aarch64_be-linux-gnu", "aarch64_be-linux-musl", "aarch64_... 続きを読む
インタビュー: 古川陽介氏が見たBunの実力とJSランタイムの未来(前編)
2022年7月初旬、サーバサイドJavaScriptの世界に突然現れたJavaScriptランタイム「Bun」 - Node.jsやDenoを大きく上回るといわれる高速性や、Zigで書かれたエンジンなどが話題となっていますが、実際のところ、本当に既存のJSランタイムを凌駕する存在なのか、そしてBunの登場をきっかけにJSランタイムの世界はどう変わ... 続きを読む
なぜ Zig の採用を検討しているのか
かなり雑に書いてるので、雑に読んでください。 Bun が Zig で開発されていることを知り、そこから Zig を調べてみています。 調べていくと自分がに求めていた言語っぽいというのがあり、社外では学生に QUIC や TLS 1.3 を Zig で OSS を開発してもらうお仕事を出したり、社内では実際に採用に向けて調査を進めています... 続きを読む
Zig 言語のファーストインプレッション
Bun を読むにあたって、まずZigを抑える必要があると思ったので数時間学習してみた。チュートリアルを一通りやったのと、ちょっと手を動かした程度で、正直エアプの域は出てない。 自分の動機として wasm を吐くのに使う言語をずっと探していて、Rust も悪くないが正直学習コスト高すぎでしんどく、Zig がそれに足るか調... 続きを読む
ざっくりとしたZigの紹介
BunのおかげでZigに注目する人が増えたように感じます。 個人的にZigを使ってる人間として紹介がてら自分のZigに対する印象を書いていきます。 どんな言語か(公式) 「堅牢で最適で再利用可能なソフトウェアを維持するための汎用プログラミング言語」 // raylib.comから引用(いくつかのコメントを削除) #include "ray... 続きを読む
夏休みに Zig で QUIC を実装してオープンソースとして公開するアルバイト
zig_quic.md 夏休みに Zig で QUIC を実装してオープンソースとして公開するアルバイト 提供: 株式会社時雨堂 バージョン: 2022.1.2 作者: @voluntas 目的 夏休み学生向けの OSS スポンサーくらいに考えてもらえれば Zig がとても良い言語だと感じているが、学ぶ余裕はないので代わりに学んで教えて欲しい QUIC は今後イ... 続きを読む
Zigで書いたコマンドラインアプリケーションにperfを使ってみた
はじめに Zigで書いたコマンドラインアプリケーションのボトルネック調査にperfを使ってみたメモです。 なお、私は今回初めてperfを使ったレベルで全然詳しくないので、間違いや改善点があればぜひご指摘ください。 環境は Ubuntu 22.04 LTS です。 続きを読む
Zig で簡単な JSON パーサを書いてみた。
#include <stdio.h> int main(int argc, char* argv[]) { int i; for (i = 1; i <= 100; i++) { if (i % 15 == 0) puts("FizzBuzz"); else if (i % 15 == 0) puts("FizzBuzz"); else if (i % 3 == 0) puts("Fizz"); else if (i % 5 == 0) puts("Buzz"); else printf("%d\n", i); } return 0; } fn main() { let mut x = ... 続きを読む