卒研作業メモ (2023/06/01)
2023/06/01 14:02
OCaml で言語サーバを実装する場合、何を使うのが定石なのか分からない
標準ライブラリで stdio から読んでバッファに送って操作してそう
Lwt ライブラリで非同期通信をしてそう
コミュニティの人は ocaml-lsp を使うと言っている
2023/06/01 15:14
ocaml-lsp/lsp にあるコードを言語サーバ実装に使えそうな気がするんだけど、使っている人いない?
coq-lsp は使ってそう
2023/06/01 16:04
プロポーザル発表
そもそも論、対象者は誰か
→ ニッチなニーズがだめではない、言い切ってしまう
支援機能であって、学習内容を損なうものではない
一つの質問は短く回答する
的外れな質問などは、この研究の対象では無いと言う
参考文献の説明
コンパイラ学習支援の関連研究
2023/06/01 22:17
Lsp.Io がファンクタになっていて、入出力の操作を渡すと JSON-RPC 形式でヘッダーの取り出しや値詰めなどをやってくれていそう
言語サーバは非同期にした方が良さそう
Language servers usually run in a separate process and clients communicate with them in an asynchronous fashion. Additionally clients usually allow users to interact with the source code even if request results are pending.
Async Language Server Protocol plugin for vim8 and neovim.