In monk mode working on Jaseci 2: A letter to friends…

To friends,

I realize I’ve been somewhat elusive these days, treading into a self-imposed monk mode, completely immersed in my current endeavor. I am engrossed in the ambitious redesign, architecture, and implementation of the much-needed Jaseci 2.

If my retreat into this bubble has led you to believe that I’ve drifted away from the whichever awesome project we’re doing together, let me assure you, that’s not the case. My slight solitude simply signifies a significant (whoa, 5 ‘s’ alitteration) juncture in my creative journey. It’s an opportunity I cannot let myself miss, a moment of synthesis where I have to allow space for ideas to bloom and transform into tangible innovation.

And yes, this small sacrifice will be well worth it. When I emerge, what we will have in our hands is a revamped Jaseci/Jac that is not just implemented on top of Python but a Jaseci/Jac that has become one with Pytohn and properly supersets it. An entity that’s interoperable with Python’s object semantics and is 100% compatible.

Our very own programming language, Jac, will continue to flaunt its unique data-spatial graph-based semantics, but it will now blend seamlessly with Object-Oriented Programming (OOP) and imperative coding styles in its own Jactastic way.

The once tricky question of “should I code this in Jac or Python?” will soon fade into oblivion. As Jac and Python meld into one, human-readable 100% Python will become the first phase of Intermediate Representation (IR) in the translation stack for any Jac program. Whatever you choose to implement in Jac, you will be able to perceive and translate whatever you write to 100% Python.

But that’s not all! There will be a slew of inspired architectural enhancements like a microkernel style architecture and bootstrapped implementation. A microkernel style architecture means that the core language runtime will be pure Python, devoid of any third-party dependencies, be “python complete”, and have an extension/plugin interface. Bootstrapping mean, with this kernel in place, the rest of the Jaseci stack will be coded in Jac (which becomes possible with the “python complete” design). Having explored a lot of technological landscapes, I can confidently say that this is technically unprecedented in the Pythonosphere.

A key benefit of this is this second iteration of Jaseci is that it introduces zero cognitive overhead when using Jaseci/Jac since it will support, be fused with, and incorporate the entire Python ecosystem. I honestly don’t know what this should be called. It’s not a domain-specific language (DSL), its not a meta-language, and its not a standalone language. I guess its a python super-language. …Yeah, thats what I’ll call it.

Well, I digress. Basically, I have been working tirelessly on this endeavor it represents a culmination of three years of my learnings from educating hundreds of individuals about Jaseci 1 and leveraging Jaseci 1 to develop numerous production-grade products.

So, very soon, the realization of this vision, and the fruit of my Monk Mode, will be upon us. I truly appreciate your patience with my recent reclusiveness. Stay tuned, for this is ‘the one’, and I can’t wait for us all to experience the magic of what this Jaseci 2 approach will offer.

Thank you for bearing with me during this period of intermittent responsiveness from me, and bear with me as this is the only way I can create space for my brain to conjure this design.

Stay Jactastic!

marsninja