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)