- Compiler: PP → Lexer → Parser → Analyzer → Gengo pipeline - Parser: 232/236 (98%) Harbour compatibility, registry-based dispatch - RTL: 351 Harbour-compatible functions - RDD: DBF/NTX/CDX engines with Rushmore bitmap optimization - Go Interop: IMPORT + pkg.Func() + obj:Method() with FastPath (15M calls/sec) - HB_FUNC API: Full Harbour C API compatible Go bridge - Concurrency: SPAWN/LAUNCH/GOROUTINE, <-, WATCH, PARALLEL FOR, ASYNC/AWAIT - Extensions: Multi-return, DEFER, Slice, f-string, Nil-safe ?:, CONST - Macro Compiler: Runtime AST parsing and evaluation - Debugger: TUI debugger with source display, breakpoints, stepping - FRB: Native + Pcode dual mode runtime binary - Tests: 13 packages ALL PASS Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
47 lines
1.1 KiB
Plaintext
47 lines
1.1 KiB
Plaintext
// GET System Test — interactive form entry
|
|
// Run: ./gettest
|
|
// Navigation: Up/Down/Tab/Enter = move fields, ESC = cancel
|
|
// Copyright (c) 2026 Charles KWON OhJun (charleskwonohjun@gmail.com)
|
|
|
|
FUNCTION Main()
|
|
LOCAL cName, cCity, cPhone, nAge, nSalary, lMarried
|
|
LOCAL GetList := {}
|
|
|
|
cName := Space(20)
|
|
cCity := Space(15)
|
|
cPhone := Space(13)
|
|
nAge := 0
|
|
nSalary := 0
|
|
lMarried := .F.
|
|
|
|
CLS
|
|
SetCursor(1)
|
|
|
|
@ 1, 20 SAY "=== Customer Entry Form ==="
|
|
@ 2, 20 SAY "Up/Down/Tab=Move Enter=Next ESC=Quit"
|
|
|
|
@ 4, 5 SAY "Name...:" GET cName
|
|
@ 6, 5 SAY "City...:" GET cCity
|
|
@ 8, 5 SAY "Phone..:" GET cPhone
|
|
@ 10, 5 SAY "Age....:" GET nAge PICTURE "999"
|
|
@ 12, 5 SAY "Salary.:" GET nSalary PICTURE "999999.99"
|
|
@ 14, 5 SAY "Married:" GET lMarried
|
|
|
|
READ
|
|
|
|
// Show results
|
|
CLS
|
|
? "=== Entered Data ==="
|
|
? ""
|
|
? " Name...:", AllTrim(cName)
|
|
? " City...:", AllTrim(cCity)
|
|
? " Phone..:", AllTrim(cPhone)
|
|
? " Age....:", nAge
|
|
? " Salary.:", nSalary
|
|
? " Married:", lMarried
|
|
? ""
|
|
? "Press any key to exit..."
|
|
Inkey(0)
|
|
|
|
RETURN NIL
|