[Date Prev][Date Next][Subject Prev][Subject Next][Date Index][Subject Index]

RE: XyScript --my conversation with Claude



Some in the group as ignorant as I am might find this useful to understand
the magnitude of the job Carl is taking on.---
=============

rust programming language. new to me

11:06 AM
Good starting point question - a few things would help me pitch this
usefully for you, Harry:

Are you coming at this as someone who wants to understand what Rust is and
why it matters (conceptual overview), or are you ready to start actually
learning to write it?
What's your current programming background - comfortable with scripting
languages like Python, deeper systems experience, or relatively light
overall?
Is there a specific use case drawing you to Rust, or is this pure curiosity?


a colleague is developing an application with it with the assistance of
claude. am familiar with and have written scripts in a number of languages,
but have no need to be a pro. mostly pure curiosity

11:08 AM
Perfect framing - so a knowledgeable observer's overview rather than a
tutorial.

What Rust is

Rust is a systems programming language developed by Mozilla, first released
in 2015. It occupies the same performance territory as C and C++ - meaning
it compiles to native machine code with no runtime overhead - but solves the
problem that has plagued C/C++ for fifty years: memory safety. The vast
majority of serious security vulnerabilities in software (buffer overflows,
use-after-free errors, null pointer bugs) trace back to manual memory
management done wrong. Rust eliminates that entire category of bug.

How it does it - the key idea

Rather than using a garbage collector (like Python, Java, Go) or trusting
the programmer to manage memory manually (like C), Rust uses a compile-time
system called ownership. Every piece of data has exactly one owner; when
that owner goes out of scope, the memory is freed automatically. The
compiler enforces this as a hard rule - code that violates it simply won't
compile. This is genuinely novel, and it's what makes Rust both powerful and
notoriously steep to learn initially.

Why it's getting traction

The Linux kernel now accepts Rust code alongside C - a historic shift
Microsoft, Google, and the NSA have all recommended moving away from C/C++
toward memory-safe languages, with Rust the leading candidate for
performance-critical work
It's been the most admired language in Stack Overflow's developer survey for
something like eight consecutive years
WebAssembly work, embedded systems, CLI tools, and increasingly web backends

The Claude angle

Rust is actually an interesting case for AI-assisted development. The
ownership/borrowing system is conceptually demanding enough that even
experienced programmers find the compiler's error messages cryptic at first
- Claude is quite good at explaining what the borrow checker is complaining
about and suggesting fixes, which lowers the barrier considerably.

What's your colleague building, if you know?

a text editor with its own scripting language

11:10 AM
That's an ambitious project - and Rust is a genuinely well-chosen tool for
it, not just a fashionable pick.

Why Rust makes sense for this specific application

A text editor has some surprisingly brutal performance requirements. It has
to handle large files, track every keystroke with zero perceptible latency,
manage an undo history that can grow arbitrarily large, and do all of this
without hiccups. The classic example in the editor world is Xi, a
high-profile attempt to build a next-generation editor in Rust a few years
back - it ultimately stalled, but it proved the architectural ideas were
sound and influenced several successors.

The most prominent current example is Helix, a Rust-built modal editor
(think Vim lineage) that's gained serious traction. And Zed, the editor
getting a lot of attention lately as a potential VS Code challenger, is also
written in Rust - its near-instant responsiveness is a direct consequence of
that choice.

The embedded scripting language piece

This is where the project gets really interesting. Writing your own
scripting language means building at minimum a lexer, parser, and evaluator
or bytecode compiler. Rust's type system and pattern matching make it
unusually well-suited for this - parsing and AST (abstract syntax tree)
manipulation are areas where Rust's exhaustive match expressions shine. Your
colleague is essentially building two things: an application and a language
runtime. That's a serious undertaking.

Common approaches for the scripting layer would be to embed an existing
lightweight language like Lua (very common in editors - Neovim uses it) or
Rhai (a Rust-native scripting language designed exactly for embedding),
versus rolling their own from scratch. The latter is dramatically harder but
also a serious learning achievement.

Does your colleague have a sense of which direction they're going on the
scripting side?


-----Original Message-----
From: xywrite-bounce@xxxxxxxxxxxxx <xywrite-bounce@xxxxxxxxxxxxx> On Behalf
Of Carl Distefano
Sent: Thursday, June 4, 2026 11:32 PM
To: xywrite@xxxxxxxxxxxxx
Subject: XyScript -- macOS tester(s) needed

"XyScript" is the working name of my latest Claude-coding project to develop
a modern, cross-platform XyWrite-like text editor. The new editor will be
written in Rust and will feature a customizable keyboard that captures and
defines all keystrokes via a keyboard file, a la XyWrite, yet allows the
user to release any key or key combination to the operating system.

As a first step, I've used Claude to create a minimalist test to determine
whether the captured-keyboard concept works as expected under the three test
OSes. I've run the test in Windows and Linux and it works as expected in
both environments. I do not have access to a Mac, so will need one or more
macOS testers. The test should take no more than 20-30 minutes to run, less
if you already have Rust installed on your machine. Everything you'll need
to run the test is included in this zip file:

https://ammaze.net/xywwweb/dls/xyscript-kbd.zip

Unzip it into a folder of your choosing, preserving the zip file's internal
directory structure -- it should create a subdirectory called xyscript-kbd,
with files and additional subdirectories. Quick-start instructions are in
QUICKSTART.md, and can also be viewed online here:

https://ammaze.net/xywwweb/dls/quickstart.pdf

Many thanks in advance. Feel free to post any questions here or email me
privately.

-- 
Carl Distefano
cld@xxxxxxxxxx