タグ

ブックマーク / zenn.dev/skanehira (4)

  • なぜSQLiteはバイトコードを使うのか

    以前にデータベースを自作しようとして、SQLiteのアーキテクチャを見てみたらVMだったことに疑問を感じ、それをツイートしたところ作者からリプをもらいました。 作者いわく、次のような背景があったとのことでした。 SQLiteを作った当初はデータベースエンジンのことをよく知らないがコンパイラのことをよく知っていた SQLデータベース・エンジンを書くという問題をコンパイラ構築の問題として扱うのは自然なことだった データベースエンジンのコアの部分をVMにするという発想がまったくなかったので、どんなメリットがあるのか?と気になっていました。 それを作者に聞いたら、詳細な説明ページを作ってくれました。 個人的にVMにしたことで、評価&実行のパフォーマンスは多少良くなると思うが、データベースエンジンのパフォーマンスにそれほど寄与していないんじゃないかな?って思ったりしました。 記事はそのページについ

    なぜSQLiteはバイトコードを使うのか
    kaido
    kaido 2024/05/17
  • RustでWasm Runtimeを実装する

    Rustで"Hello World"を出力できる小さなWasm Runtimeをゼロから実装して、WasmとWASIの動作原理を理解するです。

    RustでWasm Runtimeを実装する
  • Vimでk8sを操作するプラグインを作った

    初めに こんにちは、森に帰省中のゴリラです。 最近、完全ガイドでkubernetesの勉強をしていますが、覚えること、理解することがなかなか多くてたいへんです。 さて、kubernetesを使ったことがある人なら、一度くらいk9sを使ったことがあるかと思います。 これはとても便利なもので、podを見たりコンテナにアタッチしたりと、いろいろできます。 ただ、自分は普段Vimをメインに使っているので、できればVim上で同じことをやりたいと思って、k8s.vimというプラグインを作りました。 k8s.vimの概要 UIはこんな感じになっています。 基的にk8s://*という仮想バッファを開くとリソースを見れたり、操作できたりします。 現時点では次のことができます。 Pod関連 一覧 コンテナ一覧 describeの出力 yaml出力 Node関連 一覧 describeの出力 たとえば、pod

    Vimでk8sを操作するプラグインを作った
    kaido
    kaido 2022/06/26
  • tmuxのpopupが便利

    初めに 仕事で複数プロジェクトを同時に使っていることが多く、tmuxを愛用しています。 tmuxを使えば、簡易に画面を増やしたり分割したりできますが、次のような不便さを感じるときがあります。 画面分割すると画面サイズが小さくなる 画面数が増えるとよく使うプロジェクトの画面をすぐ出せない そこで、最近入ったpopup機能を使ってみたところ上記の課題を解決できそうだったので、軽く紹介をしていきます。 こんな感じで画面分割ではなく、画面中央にウィンドウを出せます。 やり方 筆者の環境は次になっています。 tmux next-3.3 fish version 3.1.2 @yutkatから教えていただいたものをベースにfishの関数を用意します。 bashやzshの方は適宜変えてみてください。 function tmuxpopup -d "toggle tmux popup window" set

    tmuxのpopupが便利
    kaido
    kaido 2020/10/27
  • 1