- Create comprehensive type definitions for all future features - Adopt FFI ABI v0 compliance with platform-aware pointers (usize) - Implement 8-byte alignment for cross-platform compatibility - Design single entry point: nyash_plugin_invoke - Target Linux x86-64 for initial implementation - Use unimplemented!() for gradual feature addition Key decisions from AI review: - Pointer width: platform-dependent (not fixed 32-bit) - Early addition of Option/Result types - Clear ownership rules for strings/arrays - Extensible BoxHeader with magic number Phase 9.75g-0: Build it simple, make it work, then extend!
16 lines
484 B
Plaintext
16 lines
484 B
Plaintext
🚀 Nyash MIR Compiler - Processing file: local_tests/test_simple_string.nyash 🚀
|
|
🔍 build_new_expression: class=StringBox, arguments=[Literal { value: String("Hello"), span: Span { start: 0, end: 0, line: 1, column: 1 } }]
|
|
🔍 build_new_expression: StringBox with literal string: "Hello"
|
|
🚀 MIR Output for local_tests/test_simple_string.nyash:
|
|
; MIR Module: main
|
|
|
|
define void @main() {
|
|
bb0:
|
|
0: safepoint
|
|
1: %0 = const "Hello"
|
|
2: %1 = ref_new %0
|
|
3: ret %1
|
|
}
|
|
|
|
|