Skip to content

udexon/MI4

Repository files navigation

MI4

MI4: Metaprogramming in Forth

— from HTML to Cryptocurrencies and beyond ....

To conceive a catchy name and title has proven to require at least as much efforts and luck as the ideas themselves ....

Yet this name must have been sitting at the back of one's mind as it has been the name of a blockbuster television series before immortalized as a movie series, as well as a killer (pun intended!!) phone that might be banned by the next US presidential executive order.

And now this name might attract the brightest minds of the human societies, to venture into the deepest secrets of a branch of modern science that literally recreated the world as we know it.

It might also have been personally related to one of the greatest pioneering founder of this branch of modern science, as Wikipedia said MI4 was responsible for aerial reconnaissance, and Alan Turing's code breaking was particularly aimed at German air force during World War II.

This page will now serve as the introductory page to a series of tutorial modules based on the Forth programming laguage and Phoscript, a lightweight portable Forth implementation as a universal metascript to interface to ANY known programming language:

Metaprogramming, while an unfamiliar term to even some experienced programmers, has manifested itself in many recent trending software projects, from React, Redux to WebAssembly.

While programming refers simply to an act of write code to perform a task, we may define metaprogramming as any operation involved in writing code ("metacode") or conceiving ideas (algorithms or non-coding activities) that modify or affect another piece of code ("target code").

From the root "meta", we may derive the following terms:

  • Metaprogramming
  • Metalanguage
  • Metascript
  • Metalibrary
  • Metacode

Perhaps "metalanguage" is something most people are familiar with, as it is closely related to Hypertext Markup Language (HTML) and families:

As such, metaprogramming affects almost all software projects, as one of the most, if not the most, important activities is the compiler or programming language development itself, which by definition, is metaprogramming.

Yet few people took notice of this as there has been a serious lack of introductory materials and practical daily use cases of metaprogramming to make it more accessible to the "ordinary" (a.k.a. mortal) programmers.

Yet, a big danger is looming, as HUGE tech companies can afford to employ metaprogramming experts to streamline their projects. All of the MAGA+F (Microsoft Apple Google Amazon Facebook) have contributed and open sourced important metaprogramming development in recent years. It goes without saying that they have already employed such tools and benefitted themselves internally before open sourcing the results.

In other words, individual programmers and small companies are like Farmers vs. Ford when it comes to utilizing metaprogramming in software projects. While the assembly lines pioneered by Ford had benefitted numerous mega businesses in the past centuries, driving poor farmers to become poor workers in the cities worldwide, programmers today are facing the same fate without realizing it!!

Hence MI4 — Metaprogramming in Forth — literally designed to introduce metaprogramming to the masses with practical examples in:

As readers will find out when diving deeper into MI4, we aim to initiate Free Software Revolution 2.0to build an Internet that truly belongs to the People.

And this is not a hot air slogan. It is backed by fundamental algorithms which are as old as the original British MI4 itself!!

  • Welcome to the Revolution

— perhaps the final Human Revolution, as machines may take over soon as MI4 may eventually lead to Human Level Artificial Intelligence Technological Singularity.

.... but that is the story for another day ....

About

MI4: Metaprogramming in Forth — from HTML to Cryptocurrencies and beyond ....

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published