|
I am a GO developer and really love the language. I am working in the manufacturing space, where embedded systems are mainly programmed in C/C++. And out of curiosity I am asking, why codebase-memory-mcp is written in C and not let´s say in Rust or Zig? Maybe a strange question. But it since my background is also manufacturing and embedded systems, maybe I want to spend more time working with C/C++. Don´t want to start a discussion why not XY. Just want to learn why C/C++ is a thing for MCP servers. |
Replies: 1 comment 1 reply
|
Hey @DaniDeer, sorry for the late reply. In general the answer is: It felt the best, as our core technologies (such as the tree sitters, SQLite) are also written in C. For me it was kinda then the "no brainer" to follow this pattern, not needing any bindings or something equal which I would also need to maintain then. C is a beautiful language, even though during the development phase (still current) we pay a price in dev speed. But at the end for me the most important thing is the final product, which I believe I can ship best with C than with another language, even though the path to a release can be frustrating at times. But for this I also provided a really extended CI surface (also for community PRs) which should always give signals in case something goes wrong during development, so that especially with agent coding principles you can get on quickly. The project is kinda build as an "harness" for agentic development, thats why the CI is also looking so complex compared to probably other OSS projects. But I am always happy to get feedback here :) |
Hey @DaniDeer, sorry for the late reply. In general the answer is: It felt the best, as our core technologies (such as the tree sitters, SQLite) are also written in C. For me it was kinda then the "no brainer" to follow this pattern, not needing any bindings or something equal which I would also need to maintain then. C is a beautiful language, even though during the development phase (still current) we pay a price in dev speed. But at the end for me the most important thing is the final product, which I believe I can ship best with C than with another language, even though the path to a release can be frustrating at times. But for this I also provided a really extended CI surface (also f…