You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## A SQL-like language for efficient code analysis and transformations
9
-
10
8
## Table of Contents
11
9
-[What is CEDARScript?](#what-is-cedarscript)
12
-
-[CEDARScript ELI5'ed](#cedarscript-eli5-ed)
10
+
-[CEDARScript ELI5'ed](#cedarscript-eli5ed)
13
11
-[Technical Overview](#technical-overview)
14
12
-[Key Features](#key-features)
15
13
-[Supported Languages](#supported-languages)
@@ -19,7 +17,16 @@
19
17
-[Future Enhancements](#future-enhancements)
20
18
-[Related](#related)
21
19
20
+
## What is CEDARScript?
21
+
22
+
A SQL-like language for efficient code analysis and transformations.
23
+
24
+
Most useful for AI code assistants.
25
+
22
26
## CEDARScript ELI5'ed
27
+
<details>
28
+
<summary>The Magical Librarian analogy</summary>
29
+
23
30
Imagine a vast _library_ (`your codebase`) with millions of _books_ (`files`) across thousands of _shelves_ (`directories`).
24
31
Traditional code editing is like manually searching through each book, line by line, character by character, to find
25
32
relevant information or make changes.
@@ -45,17 +52,15 @@ faster and more intuitive. It bridges the gap between the LLM's _**high-level in
45
52
of code structure, allowing the **_architect_** to focus on the '_what_' while it handles the '_how_' of code analysis
46
53
and modification.
47
54
48
-
This **division of labor** between the architect and CEDARScript is not just _efficient_ - it's _economical_.
49
-
The **Architect** (_LLM_) conserves valuable resources (_tokens_) by focusing on strategic decisions rather than
50
-
character- or line-level editing tasks.
51
-
52
-
### Audio overview / Podcasts
55
+
Audio overview / Podcasts
53
56
There are a few podcasts discussing CEDARScript you can listen to:
54
57
1.[Aider and the CEDARScript Advantage](https://open.spotify.com/episode/44ojEcwqFDujny82kibKK9?si=DTx_vMfxTpaAtjZULdVFMA) (~18 minutes)
55
58
1.[AI coding assistants and the Magical Librarian](https://open.spotify.com/show/4JAc8gphNlUspLV0XxjhQB)
56
59
2.[CEDARScript's _TurboKognition_ and _GanzPunktGenau_ editing](https://open.spotify.com/episode/79xCOfrvMZJPenLdKJiNZj?si=Mo2ofU_lRYKwxRZoCPJn6Q)
57
60
3.[Discussion of an LLM chat held during a benchmark and some command examples](https://podcasters.spotify.com/pod/show/elifarley/episodes/CEDARScript-chat-during-a-benchmark-test--command-examples-e2ptlq4)
58
61
62
+
</details>
63
+
59
64
## Technical Overview
60
65
`CEDARScript` (_Concise Examination, Development, And Refactoring Script_) is a **SQL**-like language designed to
61
66
lower costs and improve the efficiency and accuracy of AI code assistants. It enables offloading low-level code syntax and
@@ -70,6 +75,10 @@ The **Architect** doesn't need to specify every tiny detail - instead of spendin
70
75
complete code changes, it simply provides high-level blueprints using **CEDARScript** commands like
71
76
`UPDATE FILE "main.py" MOVE FUNCTION "execute" INSERT AFTER FUNCTION "plan"`.
72
77
78
+
This **division of labor** between the architect and CEDARScript is not just _efficient_ - it's _economical_.
79
+
The **Architect** (_LLM_) conserves valuable resources (_tokens_) by focusing on strategic decisions rather than
80
+
character- or line-level editing tasks.
81
+
73
82
The CEDARScript runtime then handles all the minute details - precise line numbers, indentation counts, and syntax
74
83
consistency - at zero token cost.
75
84
@@ -219,7 +228,7 @@ There are [many more examples](test/corpus) to look at...
219
228
This capability is designed to help developers, AI assistants, and other tools quickly gain a comprehensive understanding of a project's structure, conventions, and context.
220
229
221
230
### Key Onboarding Features
222
-
231
+
<details>
223
232
1.**Convention Discovery**:
224
233
CEDARScript can automatically extract coding conventions from designated files like `CONVENTIONS.md`:
225
234
@@ -243,16 +252,19 @@ This capability is designed to help developers, AI assistants, and other tools q
243
252
SELECT*
244
253
FROM ONBOARDING;
245
254
```
255
+
</details>
246
256
247
-
### Future Enhancements
257
+
# Future Work
258
+
259
+
## Future Enhancements
248
260
249
-
Ideas to explore:
261
+
<details>
262
+
<summary>Ideas to explore:</summary>
250
263
251
264
- Automatic generation of project structure visualizations
252
265
- Integration with version control history for context-aware onboarding
253
266
- Customizable onboarding queries for specific project needs
254
267
255
-
# Future Work
256
268
257
269
1.[Tree-Sitter query language](https://cycode.com/blog/tips-for-using-tree-sitter-queries/) integration, which could open up many possibilities;
258
270
2.[Comby](https://github.com/comby-tools/comby) notation for an alternate syntax to express refactorings on code or data formats;
@@ -404,6 +416,8 @@ This approach could potentially enhance LLMs' ability to leverage external tools
404
416
405
417
</details>
406
418
419
+
</details>
420
+
407
421
# Related
408
422
409
423
1.[.QL](https://en.wikipedia.org/wiki/.QL) - Object-oriented query language that enables querying Java source code using SQL-like syntax;
0 commit comments