# psPILOT **Repository Path**: jfiewo/psPILOT ## Basic Information - **Project Name**: psPILOT - **Description**: Interpreter for PILOT programming language, written entirely in PowerShell - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-25 - **Last Updated**: 2026-02-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # psPILOT psPILOT is an implementation of the PILOT programming language (**P**rogrammed **I**nstruction, **L**earning, **O**r **T**eaching) written entirely in Microsoft's PowerShell scripting language. It implements most of the PILOT Core language as defined in the (now withdrawn) IEEE standard 1154 of 1991 (Corrected to November 1991). For historical information on and an overview of the language, the reader is referred to [Wikipedia's page on the PILOT language](https://en.wikipedia.org/wiki/PILOT). This implementation has been tested using PowerShell 5 on Windows 7 and PowerShell 6 on Linux Mint, but it should work without issue on any PowerShell 5 or later system, and quite likely on any PowerShell 3 or later system. **psPILOT.md** is the language description. Important differences in psPILOT: * Variables must use the type-indicator as the lead character. * You cannot use a variable name without a type-indicator. * e.g. strings must be `$name`, numbers must be `#name`. [A.3](https://gitee.com/jfiewo/psPILOT/blob/master/psPILOT.md#known-bugs-and-other-infelicities) * `P: W«number»` sets the wrap width to `«number»`. Changes in this version: * This version lets you re-assign system variables (i.e. those starting with `%`); in this case, only variable expansion and string concatenation will occur in the body. * e.g. you can do `C: %answer = jog`. * See `TEST.TXT` for details. * While loops are supported. * See `while_loops.p` and `while_2.p` for details. Run with: `./psPILOT.ps1 `, where `` is the name of your program. * The `-db` flag prints each PILOT line as they are executed. `testscript.p` and `testscript_2.p` is the test suite. Make sure to run them before you submit any changes to the source code. ## File `C:\Users\yoga1\Documents\psPILOT\psPILOT.ps1` cannot be loaded because running scripts is disabled on this system. Unfortunately, I haven't found a way to fix this error by modifying the script. You can resolve this error using this process: * Run Windows PowerShell as Administrator. * Type `Get-ExecutionPolicy`. * If it says `Restricted`, type `Set-ExecutionPolicy Unrestricted` * You will see a confirmation prompt which says `Do you want to change the execution policy?` * Type `Y`. Now, the next time you run `./psPILOT.ps1 `, you will not see this error again.