v0.1.0 Released

Policy-Driven
Networking

A keyword-heavy, listener-based programming language built to seamlessly construct and intercept network connections globally. Stop writing boilerplate socket code.

Install P# Read Documentation
firewall.psh server.psh
// Define server binding and scope
@listen 8080
@type all

// Global state maintained by the VM
global blocklist = new List()

// The VM automatically injects connections here
listener Firewall(conn) {
  if conn.country == 'CN' or conn.country == 'RU' then
    drop
  end
  
  else accept
}

Why use P#?

Designed specifically for modern network engineers and security researchers who need to prototype resilient intercepts in seconds.

🎧

Listener Centric

Write pure policy logic. The P# auto-listening Virtual Machine handles all background socket operations, polling, and multithreading automatically.

Blazing Fast VM

Scripts compile to secure `.pbc` artifacts and execute on a hyper-optimized, stack-based virtual machine written natively in Go.

🛠️

LSP & IDE Support

Comes out of the box with a fully-featured Language Server Protocol (LSP) providing squiggly diagnostics, autocompletion, and hover info.

Install P#

Get started in seconds on macOS or Linux using our universal installer script.

curl -fsSL https://psh-lang.pages.dev/install.sh | sh

The installer will automatically detect your architecture, verify checksums, and place the psh compiler and Language Server in your path.

Operating System Architecture Release (v0.1.0)
🐧 Linux AMD64 (x86_64) psh-linux-amd64.tar.gz
🍎 macOS Apple Silicon (ARM64) psh-macos-arm64.tar.gz
🍎 macOS Intel (AMD64) psh-macos-amd64.tar.gz
🪟 Windows AMD64 (x86_64) psh-windows-amd64.zip

Verify SHA256 Checksums