QDBP: Explicit depth markers as an alternative to indentation and parentheses

tearflake1 pts0 comments

GitHub - tearflake/qdbp: An alternative surface syntax for symbolic expressions. · GitHub

/" data-turbo-transient="true" />

Skip to content

Search or jump to...

Search code, repositories, users, issues, pull requests...

-->

Search

Clear

Search syntax tips

Provide feedback

--><br>We read every piece of feedback, and take your input very seriously.

Include my email address so I can be contacted

Cancel

Submit feedback

Saved searches

Use saved searches to filter your results more quickly

-->

Name

Query

To see all available qualifiers, see our documentation.

Cancel

Create saved search

Sign in

/;ref_cta:Sign up;ref_loc:header logged out"}"<br>Sign up

Appearance settings

Resetting focus

You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.

Dismiss alert

{{ message }}

tearflake

qdbp

Public

Notifications<br>You must be signed in to change notification settings

Fork

Star

main

BranchesTags

Go to file

CodeOpen more actions menu

Folders and files<br>NameNameLast commit message<br>Last commit date<br>Latest commit

History<br>43 Commits<br>43 Commits

docs

docs

examples

examples

playground

playground

src

src

LICENSE

LICENSE

README.md

README.md

changelog.md

changelog.md

package.json

package.json

qdbp.js

qdbp.js

tests.sh

tests.sh

View all files

Repository files navigation

QDBP Compiler

QDBP (Quested-Depth/Boundary-Perceived Expressions) is a tree notation framework that allows hierarchical structures to be written using either:

explicit boundaries (ordinary S-expressions)

explicit depth relationships (depth-annotated expressions)

or any mixture of the two.

QDBP is based on a simple observation:

Trees can be perceived in at least two fundamentally different ways:

by seeing what belongs together (boundaries)

by seeing where something belongs (depth)

Traditional S-expressions emphasize boundaries.

Indentation-based systems emphasize depth.

QDBP treats both as first-class parts of the same tree.

A Quick Example

Traditional S-expression:

(package<br>shapes

(module<br>math

(fn<br>square<br>(lambda (x)<br>(* x x)))))

Equivalent QDBP representation:

package<br>.shapes

.module<br>..math

..fn<br>...square<br>...(lambda (x)<br>(* x x))

Both forms describe exactly the same tree.

Implementation

The compiler processes QDBP format to output S-Expression format using API or CLI.

Resources:

Informal Outline

Formal Specification

Online playground

Use Instructions

Status

QDBP is experimental.

The project explores whether boundary-oriented and depth-oriented tree representations can coexist as complementary views of the same underlying structure.

Feedback, criticism, and alternative interpretations are welcome.

About

An alternative surface syntax for symbolic expressions.

Topics

s-expression

data-tree

Resources

Readme

License

MIT license

Uh oh!

There was an error while loading. Please reload this page.

Activity

Stars

stars

Watchers

watching

Forks

fork

Report repository

Releases

Initial experiment

Latest

Jun 24, 2026

Packages

Uh oh!

There was an error while loading. Please reload this page.

Contributors

Uh oh!

There was an error while loading. Please reload this page.

Languages

JavaScript<br>77.0%

HTML<br>22.9%

Shell<br>0.1%

You can’t perform that action at this time.

qdbp depth expressions reload search tree

Related Articles