about summary refs log tree commit diff stats
path: root/js/scripting-lang/design/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'js/scripting-lang/design/README.md')
-rw-r--r--js/scripting-lang/design/README.md115
1 files changed, 115 insertions, 0 deletions
diff --git a/js/scripting-lang/design/README.md b/js/scripting-lang/design/README.md
new file mode 100644
index 0000000..c1ebea4
--- /dev/null
+++ b/js/scripting-lang/design/README.md
@@ -0,0 +1,115 @@
+# Design Documentation
+
+This directory contains all design documentation for the scripting language project. This README serves as the main entry point and navigation guide.
+
+## Quick Navigation
+
+### 🎯 Current Status & Roadmap
+- **[PROJECT_ROADMAP.md](./PROJECT_ROADMAP.md)** - Current status, priorities, and next steps
+
+### 🏗️ Architecture & Design
+- **[COMBINATORS.md](./COMBINATORS.md)** - Combinator foundation and architecture
+- **[ARCHITECTURE.md](./ARCHITECTURE.md)** - Complete system architecture overview
+
+### 📋 Implementation Guides
+- **[implementation/IMPLEMENTATION_GUIDE.md](./implementation/IMPLEMENTATION_GUIDE.md)** - Current implementation guide
+- **[implementation/COMPLETED_FEATURES.md](./implementation/COMPLETED_FEATURES.md)** - Documentation of completed features
+
+### 📚 Historical Documentation
+- **[HISTORY/PRECEDENCE_RESOLUTION.md](./HISTORY/PRECEDENCE_RESOLUTION.md)** - Precedence issues and resolution
+- **[HISTORY/FUNCTION_COMPOSITION.md](./HISTORY/FUNCTION_COMPOSITION.md)** - Function composition implementation
+
+## Document Organization
+
+### Active Documents (Current Development)
+These documents are actively used for current development:
+
+1. **PROJECT_ROADMAP.md** - Current priorities and status
+2. **COMBINATORS.md** - Core architecture explanation
+3. **ARCHITECTURE.md** - Complete system overview
+4. **implementation/IMPLEMENTATION_GUIDE.md** - Current implementation details
+
+### Historical Documents (Reference)
+These documents are archived for reference but not actively maintained:
+
+1. **HISTORY/PRECEDENCE_RESOLUTION.md** - Resolved precedence issues
+2. **HISTORY/FUNCTION_COMPOSITION.md** - Completed function composition work
+3. **implementation/COMPLETED_FEATURES.md** - Summary of completed features
+
+## Current Development Focus
+
+### Active Issues
+- **Case Expression Parsing**: Fix "Unexpected token in parsePrimary: THEN" errors
+- **Parser Robustness**: Address cascading parser issues
+- **Test Suite**: Get all tests passing (currently 8/18)
+
+### Recently Completed ✅
+- **@ Operator**: Function reference syntax working perfectly
+- **Standard Library**: All higher-order functions working with @ syntax
+- **Precedence Issues**: All operator precedence issues resolved
+- **Partial Application**: Fixed `reduce`, `fold`, `curry` functions
+
+## How to Use This Documentation
+
+### For New Contributors
+1. Start with **[PROJECT_ROADMAP.md](./PROJECT_ROADMAP.md)** for current status
+2. Read **[COMBINATORS.md](./COMBINATORS.md)** for architecture understanding
+3. Check **[implementation/IMPLEMENTATION_GUIDE.md](./implementation/IMPLEMENTATION_GUIDE.md)** for current work
+
+### For Development
+1. Check **[PROJECT_ROADMAP.md](./PROJECT_ROADMAP.md)** for current priorities
+2. Use **[implementation/IMPLEMENTATION_GUIDE.md](./implementation/IMPLEMENTATION_GUIDE.md)** for implementation details
+3. Reference **[COMBINATORS.md](./COMBINATORS.md)** for architectural decisions
+
+### For Historical Context
+1. Check **[HISTORY/PRECEDENCE_RESOLUTION.md](./HISTORY/PRECEDENCE_RESOLUTION.md)** for precedence work
+2. Review **[HISTORY/FUNCTION_COMPOSITION.md](./HISTORY/FUNCTION_COMPOSITION.md)** for composition implementation
+
+## Document Maintenance
+
+### When to Update
+- **PROJECT_ROADMAP.md**: Update when priorities or status changes
+- **IMPLEMENTATION_GUIDE.md**: Update when starting new implementation work
+- **COMBINATORS.md**: Update when architectural decisions change
+
+### When to Archive
+- Move resolved issues to **HISTORY/** directory
+- Update status to reflect completion
+- Keep for reference but mark as historical
+
+### Document Standards
+- Keep documents focused on single purpose
+- Include clear status indicators (✅ Active, 📚 Historical)
+- Provide clear navigation between related documents
+- Update status when issues are resolved
+
+## Quick Reference
+
+### Current Test Status
+- **Passing**: 8/18 tests
+- **Failing**: 10/18 tests (due to case expression parsing)
+- **Architecture**: Working correctly
+- **Function Composition**: ✅ Complete and working
+
+### Key Files
+- **lang.js**: Main interpreter with standard library
+- **parser.js**: Parser with combinator translation
+- **lexer.js**: Tokenizer with all operators
+- **tests/**: Comprehensive test suite
+
+### Development Commands
+```bash
+# Run all tests
+./run_tests.sh
+
+# Run with debug
+DEBUG=1 node lang.js script.txt
+
+# Run individual test
+node lang.js tests/01_lexer_basic.txt
+```
+
+---
+
+**Last Updated**: Current development focus is case expression parsing
+**Status**: Active development with solid foundation 
\ No newline at end of file