Dvije godine nakon objave verzije 1.0 … it is done!
Gotovo!
Al’ ono stvarno gotovo, završeno, to je to 😎💪.
I scena koja se vraća – godina je 1999-ta, ja mladi nadobudni znanstveni novak na Zavodu za primijenjenu matematiku – Grupa računarstvo, koji je još upisao i paralelni studij fizike na PMFu i žonglira nastavne obveze (auditorne iz Programiranja, Algoritama i struktura podataka, Operacijskih istraživanja) s predavanjima druge godine inženjerskog studija fizike, sjedim u svom kabinetu s, ako se dobro sjećam Dubravkom, Ladom i Igorom, i prekucavam iz Numerical Recipes, kupljenih dvije godine prije toga u Algoritmu u Gajevoj, neke numeričke algoritme u Visual Studio.
I ulazi Vedran Mornar, i kaže “vidi ga, ima vremena prekucavati kôd iz knjiga” 😂😂😂.
Bilo je to vrijeme uzleta ekipe “Grupe računarstvo” s trećeg kata D zgrade kad su se začinjali projekti – Iksice za prehranu, ISVU kao centralni informacijski sustav Sveučilišta – koji rade i danas, 25+ godina kasnije … a Zvone prekucava kôdove.
Kodove koje sam prekucavao još uijek imam, čak sam pomalo i iznenađen da je u kopiranjima preko barem deset računala na tom Mathlib direktoriju na većini fajlova još uvijek timestamp iz kraja 90-tih, i lijepo se sjetiti tih snova s kraja 90-tih, kad sam, pogonjem gotovo ekskluzivno spomenutom Numerical Recipes in C knjigom i diplomskim radom u kojem sam istraživao kaos uronio u svijet numeričkih simulacija i počeo sanjati o “ultimativnoj C++ biblioteci” za pomoć u realizaciji aplikacija za provođenje takvih simulacija.
San je s verzijom MML-a 1.2 konačno ostvaren, i Minimal Math Library je završen 😎.
“Zvone, Zvone, pa kako ti, s 25+ godina profesionalnog iskustva razvoja softvera možeš uopće preko usana prevaliti rečenicu – SOFTVER JE ZAVRŠEN”.
Well, završen je zato što u nazivu ima ono MINIMAL Math Library, a što rješava ključni problem svakog iole uspješnog softvera – software creep – konstantno nadolazeću plimu zahtjeva za dodatke, poboljšanja, proširenja … MML je od početka predviđen kao minimalistički library, dostupan kao single-header file (u ovoj verziji ima 60.000 LOC) a koji će korisniku-developeru dati pouzdanu i široko baziranu podlogu verificirane funkcionalnosti za provođenje svih vrsta matematičkih kalkulacija u C++ aplikacijama … i uz kompletnu cross-platform podršku!
E sad, čak i ovom definiranom scopeu, nije da je baš sve gotovo jer imam još doraditi dokumentaciju i primjere, verificirati AI generated-content do kraja, ali to će biti “kozmetičke promjene”.
“I što sad Zvone, to je to”?
A neeeeeee.
Sad sam dovršio bazu, ono fundamentalno, da sam siguran da u svojim daljnjim istraživanjima imam pouzdane numeričke rutine za sve što bi mi moglo trebati.
Primarni fokus se sad sa završetkom MML-a vraća na moju knjigu, Exploring Physics with C++, koju tek trebam ažurirati sa svim lipim simulacijama koje sam napravio kao “primjere korištenja MML-a”, a nije ni MML kraj priče.
Jer, uskoro slijedi i nastavak – pre-alpha verzije MML Extended Packages i Sigma Engine aplikacija su već u procesu – ekstenzija MML kroz dodatni skup biblioteka (Optimization, PDE Solvers, Fourier, Statistics) s naprednim algoritmima iz svake domene (gdje poglavito u Optimization dijelu konačno mislim u praksi primijeniti dijelove svog doktorata!) je logični nastavak, a Sigma Engine je nastavak mog diplomskog, i projekta RPNExpressionEvaluator … i o tome više kad bude bar približno gotov.
A vraćajući se sam MML i ovaj release, ključna poboljšanja/promjene su:
MML Release je izdan s MIT licencom 😮😎.
Ništa više dual license – free for personal, plati za commercial … uzmi i nosi, kopiraj, koristi za što god hoćeš i kako god hoćeš, napravi softver baziran na MML-u i zaradi milijun dolara … go for it 💪💪💪 … zato sam u root repozitorija dodao i AGENTS.md fajl s detaljnim uputama za AI agente kako najbolje koristiti MML.
This is the way ❤️.
Pored suštinske promjene u pristupu, najznačajniji dodatak na prethodnu verziju su cross platform visualizers – Windows, Linux, Mac, SVI primjeri sad rade, i produciraju lijepe grafove na svim platformama.
Konačno vrijeme i za malo lijepih slika.
Windows

Linux

Mac

I primjeri:


Uz to su u novu verziju uključena i mnogobrojna poboljšana u samom biblioteci – GaussKronrad integracije, computational geometry, DAE solveri, reorganizacija i proper layering različitih utilities fajlova, proširen skup testova … puno lipih stvari.
Github repozitorij je na – https://github.com/zvanjak/MML pa navalite 😎.