I have updated my slides based on the many feedback.
Digital Twin is better defined and how that helps productivity is
elaborated.
Thanks.
http://askoh.com/twin/DigitalTwinsCppSt20221129.pdf
Aik-Siong Koh wrote:
Hi:
I have a novel idea "Digital Twin applied to Software". See attached
slides.
It points to the future of improved programming productivity and
reliability.
Let me know what you think.
Thanks,
Aik-Siong Koh
http://ar-cad.com
Abstract
Digital Twin applied to Software
Aik-Siong Koh
askoh.com
There has been a major dichotomy in computing right from the
beginning: Statically Typed vs Dynamically Typed programming
languages. The former languages produce fast executables but are
inflexible to program. The latter are just the converse. This
dichotomy has been frustrating to programmers who always feel they
have to make sacrifices when making a choice. It also often leads to
futile language wars. The Digital Twin concept was introduced in
engineering where a physical system is modeled digitally in geometry,
simulation and other information. The concept has proven so successful
that it is being applied to almost everything in engineering from
simple mouse traps to complex whole cities. It occurred to the author
that this concept can be extended to software too. For example,
execution in C++ is famously fast. But development in C++ is
notoriously difficulty because of language complexity and long build
times. A flexible digital twin can be a program written in Smalltalk
which is famous for live programming. "Development at the speed of
thought" is the motto and is real. What is gained by this duplication?
Firstly, the flexible twin can be use to explore new algorithms,
features, solutions and fix bugs quickly. Only desired codes are
translated to C++ manually or automatically. Secondly, the two
programs can check each other so that bugs are reduced significantly.
These two gains will define future programming productivity and
quality. The Digital Twin concept will also drive the automatic
translation of the flexible language to the fast language.
Bio
Dr Aik-Siong Koh has a PhD from The University of Texas at Austin
where he programed in FORTRAN to simulation mechanical systems. While
teaching at Texas Tech University and Nanyang Technological
University, he developed interest in Multibody Dynamics. To develop
his own Multibody Dynamics simulator, he researched for the most
productive programming language and discovered Smalltalk. The live
programming capabilities of Smalltalk permitted him to build a
successful simulator which he then proceeded to commercialize. His
later experience with C++ at Mechanical Dynamics and MathWorks gave
him the idea of Digital Twin for Software.