The Sophie Language

Sophie is a programming language named for French mathematician Sophie Germain. Sophie has many desirable characteristics. You might like to get to know Sophie.

Sophie is a work in progress

Sophie is not yet a complete system. If you’re feeling adventurous, read on. This manual may mention features that don’t work yet, but they’ll be noted as such. Check back from time to time, or contact me via the GitHub project page

Some Desirable Characteristics

For practical purposes, Sophie is:

  • Easy on the eyes,

  • Easy on the brain (for beginners and experts alike)

  • Fun at parties. (Wait, WHAT?)

That last point might need a word of explanation. Games are an early niche. That’s actually part of Sophie’s secret plan to take over the world. (Not so secret anymore, is it?)

For the language geeks, Sophie features:

  • A pure functional core with immutable data and lazy evaluation

  • A powerful static type system based on abstract interpretation

  • [In Progress] A pure actor-oriented shell with asynchronous causally-ordered message-passing

  • A decent amount of interest and curiosity from other language geeks

Indices and tables