DEV Community

Cover image for Asking Copilot About Writing a New Programming Language
Jesse Warden
Jesse Warden

Posted on • Originally published at jessewarden.com

Asking Copilot About Writing a New Programming Language

Jesse: “Yo Copilot, if you were going to write a soundly typed language with managed effects that compiles to JavaScript, which language would you choose to write the compiler in?”

Copilot: :: Recommends Haskell, OCaml, ReasonML, and Rust with a list of various good pro’s/con’s. ::

Jesse: “Why not Zig?”

Copilot: :: Lists a large list of pro’s/con’s as to why not ::

Jesse: :: notices one of the tradeoffs is Zig’s lack of garbage collection, and Managed Effects / Monads means lots of memory usage, and constant churn, resulting in a need for Garbage Collection ::

“Zig is compiling to JavaScript, which means the runtime is in JavaScript, which means you don’t need to care about garbage collection in Zig. Does that change anything about your previous summary?”

Copilot :: describes why the lack of GC is no longer a con, but still cites the other, good reasons, as to why it’s not a good choice ::

Human in the Loop my foot, more like requires a “non-moron to read pages of good prose looking to remove parts intermingled with dangerous hallucinations”. I’m a map function for filtering bs via me being a RAG who knows what the heck he’s talking about, with a larger Context Window.

SurveyJS custom survey software

JavaScript UI Libraries for Surveys and Forms

SurveyJS lets you build a JSON-based form management system that integrates with any backend, giving you full control over your data and no user limits. Includes support for custom question types, skip logic, integrated CCS editor, PDF export, real-time analytics & more.

Learn more

Top comments (0)

ACI image

ACI.dev: Fully Open-source AI Agent Tool-Use Infra (Composio Alternative)

100% open-source tool-use platform (backend, dev portal, integration library, SDK/MCP) that connects your AI agents to 600+ tools with multi-tenant auth, granular permissions, and access through direct function calling or a unified MCP server.

Check out our GitHub!