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
Copy file name to clipboardExpand all lines: README.md
+4-217Lines changed: 4 additions & 217 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -358,6 +358,10 @@ parser
358
358
semantic checking
359
359
structured diagnostics
360
360
review-oriented rules
361
+
review map metadata
362
+
Rust source lowering
363
+
runtime crate type surface
364
+
source map JSON for generated Rust packages
361
365
```
362
366
363
367
The first milestone is not a production runtime.
@@ -437,220 +441,3 @@ compiled through Rust
437
441
```
438
442
439
443
RSScript is a language for building software that AI can help write and humans can still trust.
440
-
441
-
# RSScript
442
-
443
-
**RSScript is a managed systems language for AI-era software.**
444
-
445
-
It is designed for a world where code is often generated by AI, but still reviewed, maintained, and operated by humans.
446
-
447
-
The goal is simple:
448
-
449
-
```text
450
-
Easy by default.
451
-
Fast where it matters.
452
-
Reviewable at scale.
453
-
```
454
-
455
-
## Why RSScript exists
456
-
457
-
AI can generate code much faster than humans can review it.
458
-
459
-
This changes the bottleneck of software development:
460
-
461
-
```text
462
-
Before AI:
463
-
writing code was expensive
464
-
465
-
After AI:
466
-
reviewing generated code is expensive
467
-
```
468
-
469
-
Most existing languages were designed for a world where humans wrote and reviewed code using roughly the same cognitive process.
470
-
471
-
RSScript is designed for a different workflow:
472
-
473
-
```text
474
-
AI writes code.
475
-
Humans review semantic changes.
476
-
Tools explain risk.
477
-
```
478
-
479
-
RSScript aims to make generated code easier to trust by making important behavior visible:
480
-
481
-
```text
482
-
mutation
483
-
retention
484
-
resource lifetime
485
-
local performance boundaries
486
-
managed/local transitions
487
-
public API changes
488
-
```
489
-
490
-
## What RSScript is
491
-
492
-
RSScript is not a “GC Rust” or a “faster Python”.
493
-
494
-
It is a managed-first language with explicit local control.
495
-
496
-
Most code should feel simple and managed. Performance-sensitive code can opt into local values. Resources have clear scopes. Public APIs are designed to be easy to review.
497
-
498
-
The guiding principle is:
499
-
500
-
```text
501
-
Managed at the surface.
502
-
Local in the engine.
503
-
Reviewable at the boundary.
504
-
```
505
-
506
-
## Core ideas
507
-
508
-
RSScript is built around a small set of concepts:
509
-
510
-
```text
511
-
managed values default values for ordinary application code
512
-
local values local exclusive values for performance-sensitive code
semantic review tool-assisted review of meaning, not just text diff
516
-
```
517
-
518
-
The intent is to keep normal code approachable while still giving experts a clear performance path.
519
-
520
-
## What RSScript optimizes for
521
-
522
-
RSScript optimizes for three things at once:
523
-
524
-
### 1. Ease of use
525
-
526
-
Ordinary code should not require users to think about ownership, lifetimes, or memory management.
527
-
528
-
Most application state, object graphs, agent memory, configuration, caches, and request/response objects should be managed by default.
529
-
530
-
### 2. Performance control
531
-
532
-
Hot paths should have an explicit local-performance path.
533
-
534
-
Temporary buffers, parser scratch space, JSON decoding, CSV processing, prompt rendering, tool arguments, and similar workloads should be optimizable without rewriting the program in another language.
535
-
536
-
### 3. Reviewability
537
-
538
-
Review should focus on semantic changes:
539
-
540
-
```text
541
-
What now mutates?
542
-
What now retains data?
543
-
What resource scope changed?
544
-
What local value now crosses into managed state?
545
-
What public API changed?
546
-
What new native or unsafe boundary was introduced?
547
-
```
548
-
549
-
RSScript is designed so tools can answer these questions directly.
550
-
551
-
## Intended workflow
552
-
553
-
The intended workflow is:
554
-
555
-
```sh
556
-
rss check
557
-
rss fmt
558
-
rss review
559
-
rss lower --rust
560
-
rss test
561
-
```
562
-
563
-
The long-term goal is that a reviewer should not need to read hundreds of lines of AI-generated code line by line.
564
-
565
-
Instead, RSScript tooling should summarize the semantic risk first, and let humans drill into the code only where necessary.
566
-
567
-
## Current status
568
-
569
-
RSScript is experimental.
570
-
571
-
The current implementation is a Rust-based front-end prototype focused on:
572
-
573
-
```text
574
-
lexer
575
-
parser
576
-
semantic checking
577
-
structured diagnostics
578
-
review-oriented rules
579
-
```
580
-
581
-
The first milestone is not a production runtime.
582
-
583
-
The first milestone is a strong review-first checker that can validate the core language model against real examples.
584
-
585
-
## Roadmap
586
-
587
-
Planned stages:
588
-
589
-
```text
590
-
1. Checker prototype
591
-
2. Real AST parser
592
-
3. HIR and symbol table
593
-
4. Semantic checker
594
-
5. Rust lowering shape contract
595
-
6. Runtime crate type surface
596
-
7. Rust source generation with source maps
597
-
8. rustc diagnostic mapping
598
-
9. Core library signatures
599
-
10. Runnable MVP through rustc
600
-
```
601
-
602
-
The project will grow by testing the language against real scenarios:
603
-
604
-
```text
605
-
agent loops
606
-
tool calling
607
-
file and stream processing
608
-
JSON parsing
609
-
configuration loading
610
-
cache updates
611
-
resource pools
612
-
compiler front-end code
613
-
```
614
-
615
-
## Non-goals
616
-
617
-
RSScript is not trying to maximize syntax cleverness or type-system expressiveness.
618
-
619
-
It deliberately avoids:
620
-
621
-
```text
622
-
implicit conversions
623
-
user-defined operator overloading
624
-
hidden allocation boundaries
625
-
hidden retention behavior
626
-
macro-heavy metaprogramming
627
-
complex public signatures
628
-
Rust-style lifetime syntax
629
-
C++-style implicit magic
630
-
TypeScript-style type gymnastics
631
-
```
632
-
633
-
The goal is not to make code as short as possible.
634
-
635
-
The goal is to make code clear enough that humans and tools can review it reliably.
636
-
637
-
## Long-term vision
638
-
639
-
RSScript should become a language for building AI-era systems:
640
-
641
-
```text
642
-
agent runtimes
643
-
developer tools
644
-
automation systems
645
-
reviewable services
646
-
long-running managed applications
647
-
performance-sensitive libraries
648
-
```
649
-
650
-
It should be easy enough for ordinary application code, explicit enough for systems work, and structured enough for AI-assisted development.
0 commit comments