Skip to content

Why Jac#

The journey of Jac began with the first version of a project called Jaseci. In its first incantation, Jac did not superset Python and only exposed the data spatial paradigm. This prior version of Jac, along with Jaseci, was used to create multiple software stacks a few of which became commercial products in production today. It was loved by the small group of coders who had the opportunity to use it and build with it. However, this prior Jac/Jaseci stack represented a separate ecosystem distinct from Python and only allowed expressing strictly Data Spatial programs with the small ecosystem of libraries and tools around it.

Over the three years of this first manifestation of Jac, we learned a lot within this small community. We've understood more about what works and what doesn't, what coders love, and what they need. The fruits of this learning are being reincarnated in this new, ambitious, and what is the full realization of the Jac vision. The scope of this iteration of Jac is indeed massive, but with discipline and hard work it will be realized. It's designed to be a production ready programming option for coders everywhere.

Jac builds upon Python much like Typescript or Elm builds upon Javascript. However, Jac includes a large scope of what we believe to be good ideas to add to Python and programming in general. These includes a number of constructs from other cutting edge languages, constructs for the AI era, and the beloved data spatial programming constructs introduced with the original Jac. Jac's target is pure Python bytecode, so there is very little risk for coming on board. If you want to eject a Jac program to pure python with calls to a library that implements Jac semantics, you can!

A Love Letter to Python, and Beyond#

Jac's design encapsulates a love for the world of programming, computers, and code. It captures the spirit of what makes coding joyful while expanding upon the foundation laid by the beloved language - Python. At its core, Jac is a love letter to Python and modern coding. It inherits the clean syntax, flexibility, and broad applicability that makes Python one of the most popular programming languages in the world while being designed to give us coders new (and old) superpowers.

A New Home Lagugae#

The goal of Jac is to serve as a home language for a coders lifestyle. Jac is built for us, folks who love python, see coding as beauty, and are serious hackers aiming to launch everything they do to the world. It is the language that I've always wanted and one that I believe you will enjoy too. We are looking forward to seeing what you will create with Jac, and how you will add to its evolving story.

Where Are We today#

Jac is supported and maintained by a very passionate group that spans the global and researchers at University of Michigan.

We're very open and welcoming of anyone who might be open to catching the Jac bug. If you're interested in being part of this project and learn more, please feel free to reach out. We'd love to hear from you. We have quite a journey ahead of us, but with dedication and collaboration, we're confident we can make Jac a beloved part of every coder's toolkit.

About Jac's Creator#

Jac was originally created by Jason Mars, the creator and BDFL (for now at least) of Jac and it's data spatial programming model. Since it's creation many brilliant minds have contributed code and ideas to Jac.