Commit graph

35 commits

Author SHA1 Message Date
121803b13c
irc: improve multi-line strings; complete list concat and dynamic attrs
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I64e53c68d90b62f3ca306865ceda32af6a6a6964
2026-02-22 23:19:43 +03:00
00a3d2e585
tests: update test cases for newer syntax items; drop old artifacts
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I8640148e8e7597924f9c776750c856266a6a6964
2026-02-22 23:19:42 +03:00
ed8f637c99
irc: more syntax support
Indented strings, ancient let bindings and a bit more

Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ib86c2d8ca4402dfa0c5c536a9959f4006a6a6964
2026-02-22 23:19:41 +03:00
77aa67c7e0
tests: add tests for lookup paths and imports
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I7e54691aa3e81efcb495124d13e8c24a6a6a6964
2026-02-22 23:19:40 +03:00
a6aade6c11
irc: support lookup paths and import keyword
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I0d16726646aef82ce675c4f8d209029a6a6a6964
2026-02-22 23:19:39 +03:00
3c1ce0fd31
tests: add test fixture for merge operator
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ie8d8e5fb817349469fed194773120ce86a6a6964
2026-02-22 23:19:38 +03:00
59fcd3ef92
irc: support merge operator
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Icfb0cc81542e637d4b91c6a5788370fb6a6a6964
2026-02-22 23:19:37 +03:00
38c13de01d
irc: add Float and URI literal support
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I40c59d94f650e7b9e68f77598492d7ab6a6a6964
2026-02-22 23:19:36 +03:00
b49044c9a5
nix: format test fixtures via nix fmt
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ia9c1e9b0a8cd9c6d834f153609baa5426a6a6964
2026-02-22 21:51:22 +03:00
e8dd09c5b4 chore: run clang-tidy with --fix
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I84fc0804ceeb652b26ee385b26132e816a6a6964
2026-02-22 01:49:56 +03:00
829199f91a
chore: run through 'clang-tidy' with '-fix' 2026-02-21 17:42:08 -05:00
c710b622da
nix: inline env set; add clang-tools to devshell & name shell
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I5cf7ad8f9fc8c568e53e6cf8dda12b746a6a6964
2026-02-22 00:18:22 +03:00
98fd1bfc52
various: format with clang-format
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ib9abc9d2dcd036d3680c5aa3dc919bfa6a6a6964
2026-02-22 00:18:21 +03:00
63a9eddc49
irc/evaluator: fix e passed by value in Thunk constructor
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: If3bdfd1fc0851d4113b89827474a74a86a6a6964
2026-02-22 00:18:20 +03:00
eb84d4617b
chore: set up clang-tidy
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Idd88aa64efcc59a70dffa548603e51156a6a6964
2026-02-22 00:18:19 +03:00
5b80e3aa63
chore: set up clang-format
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ia4928173791618598031d584f7b6cf166a6a6964
2026-02-22 00:07:52 +03:00
4aa514d83d
meta: ignore more generated files and nix artifacts
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Id142ee9a1bdf076542f684130ba925216a6a6964
2026-02-22 00:07:51 +03:00
e36693ac3f
docs: document project architechture
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Iaa99d706d61857fbd51d3b757b5066ab6a6a6964
2026-02-22 00:07:50 +03:00
2539ff7ca3
chore: add CMake test target; ignore build directories
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I0db5e008e65f5a5109d8eaa6119b3c246a6a6964
2026-02-22 00:07:49 +03:00
ddfbc91b58
tests: add regression test suite; update test fixtures
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I5ccf7cb25394bdcae068b49f66787c3a6a6a6964
2026-02-22 00:07:48 +03:00
f4135a5dca
types/serializer: add HasAttrNode binary encoding for ? operator
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ibfb89151eb80ab1ae1d8878b6849d2c96a6a6964
2026-02-22 00:07:47 +03:00
3441853eef
various: fix string comparison, interpolation and ADD op. for strings
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ice1bfb5682ab48a967dc16f1378e23ae6a6a6964
2026-02-22 00:07:47 +03:00
da9be4b014
docs: document binary format; add testing instructions
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I2cb3440f97b4add57860b212a60442336a6a6964
2026-02-22 00:07:46 +03:00
860460c402
chore: update gitignore for build artifacts
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I3fd18bc9e15b0a33557fcd95368b49776a6a6964
2026-02-22 00:07:45 +03:00
49f64c9c98
tests: initial test suite for IR compiler
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I70cd1dfa45add9df58a44add69fbd30a6a6a6964
2026-02-22 00:07:44 +03:00
22c92bfdd5
plugin: integrate evaluator for runtime comp
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I1e43447957eb0c09b3ee7c2c21abe6496a6a6964
2026-02-22 00:07:43 +03:00
c32328f14d
evaulator: implement IR evaluation engine
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I980aaef64177b76620e3d1f9f39001046a6a6964
2026-02-22 00:07:42 +03:00
4b97433642
serializer: add HasAttrNode binary encoding
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ifdbd53aafc8291c78c273e2c9092fdf26a6a6964
2026-02-22 00:07:41 +03:00
a69385c5ca
ir-gen: add HasAttrNode conversion
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I8e5bf04734112dc6e0885a42b4d546016a6a6964
2026-02-22 00:07:40 +03:00
59fedbe78d
types: add hasAttrNode for ? operator support
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I73691d86c8ce277bacc0dd7ed33939c96a6a6964
2026-02-22 00:07:39 +03:00
32f74c29fd
parser: add inherit keyword; initial string interpolation
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Icdada04a72728e8881e2db4254bd88546a6a6964
2026-02-22 00:07:38 +03:00
7a74735213
nix: add libblake to buildInputs; split off nativeBuildInputs
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I0541e803fd9635867501202c18567f786a6a6964
2026-02-22 00:07:37 +03:00
303b211d74
meta: add direnv support
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: If9ada8a4c2a3eeac32121804553728376a6a6964
2026-02-22 00:07:36 +03:00
79997e09de
docs: initial project overview
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I598fbe60eaf51f2d3ab094bdf2c91df36a6a6964
2026-02-22 00:07:35 +03:00
618a58b2b8
initial commit
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I1ad48ade1bc8234b7d7c9fe3d976a5be6a6a6964
2026-02-22 00:07:30 +03:00