eniehackとの議論4

  • Twitter proxyに関連する2022/08/04 sei0oへの返信3 - およそMECEでないアカシックレコードの200那由多飛んで3万分の3への返信
  • アーキテクチャ
    • web
      • WebだとFilterの読み込みをどこにするんだろう?

        • Webサーバにエディタを埋め込んで、書き込ませるのを考えてた(で、それをDBに入れるなりdaemonにするなり, serverに使わせるなりする)
        • スマホからfilterを作れるようなUIを考える必要はない
    • standalone
      • backendとfilterは同一のdaemonで動く?
      • 細かい話: systemdでのper-user serviceで動かすイメージでいる

        • 十分使いやすいし(ちゃんと動くし)、いいと思う
      • frontend <-> backend
        • 極端な話、frontendがbackground processなbotでもいい もちろん、GUIアプリとしても、TUIとしても、localhostなWebサーバとしても、走らせることは可

          • Syncthingはdaemonを置いて、localhost上のWebサーバでGUIを提供してるなあ
        • 後からなんとでもなるので、まずはsocketで…かな
    • 整理(↓合ってる?)
      • Frontend
        • ユーザマシン上に置く場合:standaloneなGTKアプリとしてつくる
        • ユーザマシン上に置かない場合:webアプリケーションとして、Webページとして表示する
          • マルチプラットフォーム化はある程度自動的に達成される
      • Backend/Filter
        • ユーザマシン上に置く場合:systemdのper-user serviceとして動作する
          • Frontendとはソケットでつながる
        • ユーザマシン上に置かない場合:どこかのサーバにあるbackendにアクセスする
          • FrontendとはHTTPでつながる(?)
        • マルチプラットフォーム化は必要?(Linuxだけだと困る?)
  • フィルタ
    • mrubyが機能が少なく、3rd-partyのmrbgemに投げる思想になっている感じになっている

    • lua
      • Robloxが作ってる [[ Luau ]]はユースケースが似ていて、よさそう
        • Sandboxing - Luau
        • IOやOS関連の関数をガッツリ削って、VMも改造してる
        • mluaから使える
      • rlua
        • The API now contains the pieces necessary to implement simple, limited “sandboxing” of Lua scripts by controlling their environment, limiting their allotted VM instructions, and limiting the amount of memory they may allocate.

        • (ふつうの)Luaをsandboxするのは難しいらしい
      • sandkiste_luaというのがあるみたいだけど新しすぎてまだまだかな
  • マルチプラットフォーム対応
    • 思いつき: 後者は「マルチソース」と呼べそう?

      • そうしよう
      • パラフレーズ:マルチソース対応は後回し

Backlinks