タグ

ブックマーク / blog1.mammb.com (3)

  • テキストエディタで使われがちなデータ構造 Piece Table の概要と実装 - A Memorandum

    テキストエディタのデータ構造 Gap method Piece Table method Piece Table の構造 Piece Table の実装 Piece Table のメソッド まとめ テキストエディタのデータ構造 テキストエディタで採用されているデータ構造にはいろいろあります。 こちらの論文 Data Structures for Text Sequences では各種データ構造について比較検討されています。 多くは、Gap method や Piece table method をベースにしたものが多いのではないでしょうか(図で言う最下部の中心の丸印に当たります)。最近では Rope なども有名ですね。 Gap method Gap method では、現在のカーソル位置で、テキストバッファを2つに分割し Gap を間に挟み、カーソル位置に対する編集(テキスト追加/削除)を

    テキストエディタで使われがちなデータ構造 Piece Table の概要と実装 - A Memorandum
    clairvy
    clairvy 2022/09/14
  • Elixir の RoR 風フレームワーク Phoenix のはじめ方 - A Memorandum

    blog1.mammb.com の続きで Phoenix。 Elixir 版 RoR の Phoenix Framework。現在のバージョンは V0.15.0。 公式サイト http://www.phoenixframework.org/ Github https://github.com/phoenixframework/phoenix 事前準備 必要に応じて以下を入れておく。 node と npm Phoenix はアセットのコンパイルに brunch.io を使うので、node と npm が入っていない場合は入あらかじめ入れておく。 $ brew update $ brew install node 静的なアセットを使わない場合は後ででてくる mix コマンドで --no-brunch を付ければ node と npm は不要。 Hex Erlang のパッケージ管理ツール He

    Elixir の RoR 風フレームワーク Phoenix のはじめ方 - A Memorandum
  • Elixir のはじめ方 - A Memorandum

    導入 Homebrew での導入は以下。 brew update brew install elixir バージョン確認。 $ elixir -v Elixir 1.0.4 Erlang も入る。 erl -version Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 6.4 IEx (Interactive Elixir) 対話型シェルで、各種操作が実行できる。 $ iex Interactive Elixir (1.0.4) - press Ctrl+C to exit (type h() ENTER for help) iex> REPL として直接コードを実行したり、 iex> 1 + 1 2 iex> IO.puts "Hello World!" Hello World! :ok コンパイルしたり iex> c "

    Elixir のはじめ方 - A Memorandum
  • 1