From 6fd6ac03f2893f32655adee683cafc5e18b8cee3 Mon Sep 17 00:00:00 2001 From: Jimmy Byrd Date: Mon, 9 Sep 2024 12:51:28 -0400 Subject: [PATCH] Add 2024-09-13 session --- src/content/sessions/2024-09-13.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 src/content/sessions/2024-09-13.md diff --git a/src/content/sessions/2024-09-13.md b/src/content/sessions/2024-09-13.md new file mode 100644 index 0000000..4330cfa --- /dev/null +++ b/src/content/sessions/2024-09-13.md @@ -0,0 +1,23 @@ +--- +title: "Fabulously Generating the Language Server Protocol in F#" +preview: "Fabulous.AST for the F# LSP" +isDraft: true +date: 2024-09-13T13:00:00.000Z +slug: "2024/09/13" +champion: "Jimmy Byrd" +zoomLink: "https://us06web.zoom.us/j/87336244661?pwd=TQt9ykcCNQaoUGlocohare5Il8jb6E.1" +zoomPasscode: "generated" +issueLink: "https://github.com/ionide/LanguageServerProtocol/issues/66" +company: "Motivity" +youtubeId: "" +--- + +# Topic + +After a long break, we're back with some new content! + +One of the problems of maintaining a [Language Server Protocol](https://microsoft.github.io/language-server-protocol/overviews/lsp/overview/) (LSP) implementation is that it can be tedious and error-prone to be correct with the [specification](https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/). As of version 3.17.0 of the specification, there is a [metaModel](https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#metaModel) that can be used to generate the LSP implementation. In a [previous session](https://amplifyingfsharp.io/sessions/2024/01/12/) we covered [Fabulous.AST](https://github.com/edgarfgp/Fabulous.AST), a powerful library that helps you generate F# code. We've previously implemented [generating the types](https://github.com/ionide/LanguageServerProtocol/pull/49) for the LSP, but now we're going to take it a step further and generate the Client and Server interfaces for the LSP. + +## Champions + +- [Jimmy Byrd](https://github.com/TheAngryByrd)