# Concrete syntax tree

A concrete syntax tree is a lossless tree representation used in parser tooling to preserve grammar productions, tokens, whitespace, comments, and other source-text details.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Postgres Language Server: implementing the Parser

DevFeed: [Postgres Language Server: implementing the Parser](<https://devfeed.tech/articles/postgres-language-server-implementing-the-parser-505.md>)

Original publisher: [Read original article](<https://supabase.com/blog/postgres-language-server-implementing-parser>)

Author: Philipp Steinrötter

Published: 2023-12-08T07:00:00Z

Content type: article

Language: en

Sources: [Supabase Blog](<https://devfeed.tech/sources/supabase-blog.md>)

Topics: [Parser](<https://devfeed.tech/topics/parser.md>), [servers](<https://devfeed.tech/topics/servers.md>), [SQL](<https://devfeed.tech/topics/sql.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [Concrete syntax tree](<https://devfeed.tech/topics/cst.md>), [Visual Studio Code](<https://devfeed.tech/topics/visual-studio-code.md>), [Supabase](<https://devfeed.tech/topics/supabase.md>)

Tags: [apis](<https://devfeed.tech/tags/apis.md>), [code](<https://devfeed.tech/tags/code.md>), [database](<https://devfeed.tech/tags/database.md>), [developers](<https://devfeed.tech/tags/developers.md>), [development](<https://devfeed.tech/tags/development.md>), [postgres](<https://devfeed.tech/tags/postgres.md>), [programming](<https://devfeed.tech/tags/programming.md>), [server](<https://devfeed.tech/tags/server.md>), [source](<https://devfeed.tech/tags/source.md>), [sql](<https://devfeed.tech/tags/sql.md>), [tokens](<https://devfeed.tech/tags/tokens.md>), [tooling](<https://devfeed.tech/tags/tooling.md>), [tools](<https://devfeed.tech/tags/tools.md>), [vscode](<https://devfeed.tech/tags/vscode.md>)

### AI overview

This article updates Supabase's work on a Postgres Language Server by focusing on its parser. It explains how a parser converts source code into tokens and syntax trees, including concrete syntax trees and abstract syntax trees, so language-server tools can provide features such as linting, error detection, and code intelligence for SQL and Postgres programming.

### Source excerpt

A detailed analysis of our iterations to implement a Parser for Postgres

## Enabling low-latency, syntax-aware editing using Tree-sitter

DevFeed: [Enabling low-latency, syntax-aware editing using Tree-sitter](<https://devfeed.tech/articles/enabling-low-latency-syntax-aware-editing-using-tree-sitter-13539.md>)

Original publisher: [Read original article](<https://zed.dev/blog/syntax-aware-editing>)

Author: Max Brunsfeld

Published: 2023-03-27T00:00:00Z

Content type: tutorial

Language: en

Sources: [Zed Industries - Blog](<https://devfeed.tech/sources/zed-industries-blog.md>)

Topics: [Tree-sitter](<https://devfeed.tech/topics/tree-sitter.md>), [Parsing](<https://devfeed.tech/topics/parsing.md>), [Concrete syntax tree](<https://devfeed.tech/topics/cst.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [incremental](<https://devfeed.tech/tags/incremental.md>), [low-latency](<https://devfeed.tech/tags/low-latency.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [parsing](<https://devfeed.tech/tags/parsing.md>), [programming](<https://devfeed.tech/tags/programming.md>), [syntax](<https://devfeed.tech/tags/syntax.md>)

### AI overview

This tutorial explains how Zed uses Tree-sitter for syntax-aware editing. It covers the challenges of parsing frequently changing and temporarily invalid source code, and describes Tree-sitter's incremental parsing, error recovery, and concrete syntax trees, including syntax-aware selection.

### Source excerpt

A tour of Zed's syntax-aware editing features, and how we use Tree-sitter to implement them efficiently.