How Jasm
works with AI
Summary
- The
big picture: Modern AI is the latest development said to
make programmers obsolete. None of the preceding disruptive
technologies replaced programmers; instead, they allowed
programmers to write more and larger programs. AI will
likely do the same (Jevon's paradox). Jasm is designed for
medium and large programs; with AI the world will need Jasm
even more.
- AI
and no-code solutions promise to let you build applications
much faster. In reality, they make easy things easier and
hard things harder. Jasm makes hard things easier. Jasm and
AI will work well together.
- It
will be easier to read & understand AI-generated Jasm
code. This is a significant advantage.
- AI
generates 40% more bugs. Jasm mitigates this by preventing
bugs and because it is designed for debugging.
- Jasm
can receive all of the benefits of AI that any other
language can, but we have the opportunity to build AI into
the Jasm Studio visual IDE. This will allow Jasm to benefit
from AI more than other languages.
- Jasm's
simple syntax makes it easier for AI code assistants to
generate Jasm code.
- Jasm's
simple syntax makes it easier for humans to understand
AI-generated code.
How Jasm can be the foundation for
AI-enabled development
- AI-generated
code is often difficult to read and understand. Jasm tames
this with simplicity and readability. This advantage should
not be underestimated.
- AI-generated
code is notoriously difficult to maintain. Jasm tames this
with simplicity and readability. Maintenance is a major cost
over the software life-cycle.
- Code
must be written in certain ways to be easier to debug. AI
rarely does this, and it is hard to make AI do this. Jasm
syntax is designed to produce debuggable code. This is a
significant savings because programmers spend a lot of time
debugging.
- AIs
can hallucinate APIs. Jasm's compile-time checking detects
and rejects this.
- It
can be difficult to get AI to generate adequate test
coverage. Jasm Studio can display test coverage, or lack
thereof, graphically. Also, coverage is a reportable
statistic.
- It
can be difficult to get AI to generate modular code. Jasm is
designed for modularity and will cause AI to generate more
modular code.
- AI-generated
code often does not handle errors the right way or the way
you want. Jasm is designed for error handling, unlike most
languages, where error handling is an afterthought or is the
responsibility of the programmer.
- AI
has trouble with large files and large procedures. Jasm
tames this with simplicity and modularity.
- AIs
often have difficulty getting types right. Jasm's
compile-time checking detects this.
- It
can be difficult to get AI to code defensively. Jasm
generates defensive code automatically.
- AI's
produce more "serious bugs" of the type described earlier.
These cause project-killing quagmires in medium and large
projects. As stated earlier, Jasm eliminates 80% of these
serious bugs.
admin (at) Jasm Tech (dot) com