Wednesday, September 2, 2026

Degringolada generată de Inteligența Artificială în domeniul INFORMATICII

Era și de așteptat să se întâmple așa ceva pentru că: 
- rezultatul muncii informaticienilor este conținut digital în online,
- Inteligența Artificială se hrănește cu conținut digital, 
- informaticienii erau acuzați că lucrează pentr a-i da afară pe oameni de la locurile lor de muncă,
- în informatică au pătruns tot felul de persoane care au găsit acolo un loc călduț,
- marile avantaje pe care le-a prezentat informatica a devenit un magnet și pentru neaveniți,
- dezvoltarea în exces a informaticii a făcut ca fenomenul să se prăbușească chiar datorită dezvoltării.
Inteligența artificială reprezintă momentul adevărului pentru societatea construită haotic, bazată pe avantaje necuvenite, nu pe marea performanță, căci a crede că dacă ai auzit ceva în strația de autobuz despre cloud, musai ești specialist în cloud computing, din moment ce dor solicitând o componentă software, inteligența artificială o pune la dispoziție, arată că cine sapă groapa altuia, cade el în ea.
Îmi aduc aminte cum acum peste 45 de ani, împreună cu un fost student am tratat în lucrarea de diplomă despre generatoare de programe COBOL și el a construit un program care:scria un program COBOL căruia dacă i se dădeau denumirile câmpurilor și tipul lor, scria secvențe de text sursă pentru:
- descrierea articolului unui fișier,
- validarea conținutului câmpurilor,
- efectuarea de calcule,
- deschidere-închidere de fișier,
- scriere de articole,
- tipărire de tot felul de date.
Se perforau cartele cu acel text sursă COBOL generat și dacă era rulat la calculator cu un set de cartele de date, era creat un fișier secvențial. Acum Inteligența Artificială face cu mult mai multe lucruri și deci există o explicație de ce anu acesta nu s-au ocupat locurile la facultățile cu profil de informatică. De informaticieni va fi nevoie în continuare, dar nu de inși fără idei, fără eficiență, care doar adaptau cod, care înlocuiau parametrii, care mutau programe de colo-colo. Este nevoie de înaltă performanță, de originalitate, de idei, de oameni speciali, care aduc plusvaloare domeniului. Informatica nu mai este pentru cei care cred că o meserie se învață autodidact, care cred că făcând copy-paste de texte sursă se rezolvă totul. Acum informatica își caută drumul ei și învățământul de informatică trebuie să încorporeze inteligența artificială în el, căci el nu poate fi deasupra inteligenței artificiale, așa cum informaticienii se credeau deasupra celorlalți oameni din organizații, ca fiind niște semi-zei.



(02 septembrie 2026)

Tuesday, September 1, 2026

Cartea lui Petre DIMO de Programare în FORTRAN ca sursă de inspirație

Lucram încă în Centrul de Calcul al ASE când am cumpărat cartea lui Petre DIMO și venind din programarea în ASSEMBLER, iar programele mele FORTRAN se inspirau din documentația extrem de bine pusă la punct de la IBM, îmi scriam subprogramele mele FORTRAN căci aveam ambiția de a avea cât mai multe subprograme care operau pe un șir de caractere.  Mă voi referi la cartea referită prin:

Petre DIMO - Programare în FORTRAN, Editura Didactică și Pedagogică, București, 1971, 298 pag.

ca sursă de inspirație, căci la un moment dat am dorit să extind crearea de subprograme la operații pe masive bidimensionale, folosindu-mă cât mai mult de modul în care se făcea alocarea de memorie. Știam că în FORTRAN, compilatoarele dispuneau elementelor din  matrici coloană după coloană, Adică, dacă aveam o matrice A cu m linii și n coloane, dispunerea se realiza astfel:

- elementul A(1,1) era dispus la adresa relativă de memorie X,

- elementul A(1,2) era dispus la adresa relativă de memorie X+4,

- elementul A(1,3) era dispus la adresa relativă de memorie X+2*4,

- elementul A(1,m) era dispus la adresa relativă de memorie X+(m-1)*4,

- elementul A(2,1) era dispus la adresa relativă de memorie X+m*4,

- elementul A(m,n) era dispus la adresa relativă de memorie X+(m*n-1)*4.

Mi-a venit ideea de a mă folosi pentru anumite subprograme care lucrau pe matrici de subprogramele pe care le aveam deja. Având la dispoziție cartea lui Petre DIMO, îmi aduc aminte ca și acum, am căutat să văd dacă în poginile ei se află ceva despre dispunerea coloană după coloană a elementelor matricei în FORTRAN și la pagina 57 am găsit ce căutam. Cum mie îmi place să sriu programe având o documentație în față și aveam cartea lui DIMO, am verificat ce și cum cu instrucțiunea EQUIVALENCE și era exact ceea ce mai știam eu de la documentațiile IBM, cu exemple sugestive, deci am prins curaj.

Aveam subrogramele:

        SUBROUTINE MINIM(X,N,MIN)

        DIMENSION X(100)

        MIN=X(1)

        DO 10 I=2,N

        IF(X(I).LT.MIN) MIN=X(I)

10    CONTINUE

        RETURN


        SUBROUTINE MAXIM(X,N,MAX)

        DIMENSION X(100)

        MAX=X(1)

        DO 10 I=2,N

        IF(X(I).GT.MIN) MAX=X(I)

10    CONTINUE

        RETURN


        SUBROUTINE SUMA(X,N,SUM)

        DIMENSION X(100)

        SUM=0.

        DO 10 I=1,N

        SUM=SUM+X(I)

10    CONTINUE

        RETURN


Dacă în programul apelator aveam o matrice definită fix cu:

        DIMENSION W(10,10)

ale cărei elemente se inițializau prin citirea de cartele a valorilor, atunci scriam în program:

    DIMENSUIB W(10,10), U(100)

    EQUIVALENCE (W(1,1),U(1))

după care urmau instrucțiunile de citire a cartelelor unde se aflau cele 100 de valori cu care se inițializau  elementele matricei, după care urmau instrucțiunile de apelare

CALL MINIM(U,100, UMIN)

CALL MAXIM(U,100, UMAX)

CALL SUMA(U,100, USUM)

și instrucțiunile de scriere pentru UMIN, UMAX, USUM.

Cumoscând formulele de punere în corespondență ale elementelor matricei cu elementele vectorului, la vremea aceea am construit și subprograme în care numărul de  linii era m și numărul de coloane era n, cu m și n mai mici decât 50, căci m-am gândit că dacă scriu subprograme, să nu fie restrictive la un număr prea mic de linii și de coloane. Programatorii știu ce vorbesc câd spun că m și n erau mai mici decât 50, căci elementele inițializate ale matricei A prin EQUIVALENCE (A(1,1),B(1,1)) nu mai sunt consecutive tot timpul cu elementele vectorului B de 2500 componente.

Îmi aduc aminte că în subprogramele mele băgasem instrucțiuni de testare a valorilor lui m și n, complectasem lista de parametri cu m și n a subprogramelor și după multe teste, ajunsesem să fiu mulțumit de ceea ce făcusem, dar de fiecare dată când simțeam nevoia, deschideam cartea lui Petre DIMO.

Nu forțez lucrurile dacă spun că Petre DIMO a creat un curent în Programarea în limbajul FORTRAN cam la nivelul pe care l-a generat publicarea poemului LUCEAFĂRUL, atât prin calitatea cărții, cât și prin tirajul acesteia. Tirajul nu este făcut public de către  Editura Didactică și Pedagogică, dar cu siguranță, era un tiraj de peste 4000 exemplare.





(02 septembrie 2026)

Lucru cu șiruri de caractere în FORTRAN, după cartea lui Petre DIMO '

Deși se spunea că limbajul FORTRAN are multe constrângeri, lucrul cu șirurile de caractere este posibil, chiar dacă acest limbaj nu are tipul de date char așa cum are limbajul C++. Mă voi referi la cartea referită prin:
Petre DIMI - Programarew în FORTRAN, Editura Didactică și Pedagogică, București, 1971, 298 pag.
La pagina 87 este prezentat descriptorul de format H precedat de un număr întreg n care arată numărul de caractere care se vor imprima. Dacă avem instrucțiunea:
        WRITE(3,12)
12    FORMAT(10HXXXXXXXXXX)
execuția acestei secvențe conduce la imprimarea a 9 caractere:
XXXXXXXXX
Dacă pe o cartelă sunt perforate caracterele:
123456789AB
și scriem secvența:
        WRITE(3,12)
12    FORMAT(10HXXXXXXXXXX)
        READ(1,12)
        WRITE(3,12)
efectul este:
XXXXXXXXX
23456789
Șirurile de caractere nu sunt memorate pentru inițializarea de variabile și deci programatorul nu are posibilitatea să facă el ce vrea cu aceste caractere, din moment ce nu se inițializează variabile.
La pagina 95 este arătată modalitatea prin care programatorul tipărește șiruri de caractere (litere mari, cifre și alte caractere speciale) în secvența de instrucțiuni:
        WRITE(3,7)
  7    FORMAT( 'I', 'TABLOUL REZULTATELOR')
Va apre scris TABLOUL REZULTATELOR
Primul caracter din format are un rol explicat frumos de Petre DIMO în raport cu convențiile limbajului FORTRAN.
Inițializarea datelor cu valori alfanumerice este exemplificată la pagina 246 prin instrucțiunea:
        DATA(A(I),I=1,3)/1.22,1.3,1.4/1HA/
ceea ce duce la inițializările:
A(1)=1.1
A(2)=1.2
A(3)=1.3
X = A (caracterul alfabetic A)
La pagina 260, secvența:
    INTEGER BLANC
    DATA BLANC /1H /
atribuie caracterul spațiu variabilei BLANC.
Secvența:
        READ(1,11) CARTA,CARTB
11    FORMAT(2A4)
inițializează variabilele CARTA și CARTB cu câte 4 caractere alfanumerice perforate pe cartele.
Se deschide în acest fel drumul la a folosi modul de constituire a șirului de baiți consecutivi în masivele unidimensionale și inițializarea cu caracterele de definire ale unui format. Dacă se definește un masiv unidimensional D care se inițializaează folosind ceea ce are descrierea unei cartele FORMAT și se va scrie secvența:
        READ(1,10)(D(I), I=1,10)
10    FORMAT(10A4)
        READ(1,11)(X(I), I=1,N)
11    FORMAT(D)
se obține inițalizarea masivului unidimensional X cu date de format variabil de la problemă la problemă.
Limbajul FORTRAN, așa cum a fost prezentat de Petre DIMO în cartea lui, chiar rezolvă orice problemă ar avea un programator cu pretenții.




(01 septembrie 2026)


 

MIRCEA de la MIREASA este otreapa ALFA

Un bărbat este un bărbat.
Un bărbat are măsura lucrurilor.
Un bărbat nu clamează că este bărbat, ci este bărbat.
Un bărbat respectă femeia.
Un bărbat are demnitate.
Un bărbat nu aleargă după multe femei deodată.
Un bărbat este selectiv.
Un bărbat se îndrăgostește de o femeie, o iubește și doar când dragostea dispare pleacă mai departe.
Bărbatul ALFA este recunoscut de haită ca fiind ALFA.
Bărbatul ALFA nu spune niciodată că este nici bărbat, nici ALFA.
MIRECEA de la showul MIREASA prin tot ceea ce a făcut rezultă că nueste deloc bărbat și cu atât mai puțin ALFA. Dacă în lume există otrepe, prin comportamentul său, MIRCEA s-a comportat ca om otreapă cu femeile din competiție și dacă mai adaug și pe ALFA, MIRCEA este Otreapa ALFA, așa cum strigă el în platou despre sine însuși.


(01 septembrie 2026)

De ce SUC și nu alcool, de ce starea aceea și nu BEȚIV sau BEȚIVANCĂ?

Mă uita la showul Tv MIREASA și văd cum an de an la bairamurile de sâmbătă seara concurentele și concurenții se îmbată ca scroafele, respectiv, ca porcii, ca lumea să se vorbească în loc de alcool se spune SUC și în loc să se vorbească de BEȚIVI și de BEȚIVANCE se vorbește de stare euforică, de starea aceea, de starea nepotrivită și tot felul de chestii care ocolesc esența.
ANE-MARIE s-a îmbătat.
VERONICA s-a îmbătat.
Discuțiile au fost tot timpul despre SUC.
Niciuna dintre concurente n-a recunoscut că a fost BEATĂ.
Mai mult, VERONICA l-a apostrofat pe IONUȚ că o controlează cât de mult bea.
Este mult de lucrat, dar ceea ce observ este faptul că femeile din ziua de azi sunt de zece ori mai aplecate spre băutură, căci insdependente fiind, ele cred căle este permis să facă orice, fără să știe că dacă un bărbat beat arată rău, o femeie beată arată de 1.000 de ori mai rău, prin atitudine și prin comportament.
Propun ca în emisiunea MIREASA să se folosească cuvintele ALCOOL, VIN, VODCĂ, ȚUICĂ, BEAT, BEȚIV,  BETIVĂ, BEȚIVANCĂ și acestea să devină etichete lipite de concurenții care se îmbată.


(01 septembrie 2026)

Programarea în FORTRAN de Petre DIMO, publicată în 1971

Anul acesta s-au împlinit 55 de ani de la publicarea cărții referite prin:
Petre DIMO - Programare în FORTRAN, Editura Didactică și Pedagogică, București, 1971, 298 pag
Este cartea care a contribuit la formarea a nenumărate generații de programatori și de aceea l-am inclus pe autorul ei, Petre DIMO în galeria marilor clasici ai literaturii române de informatică. Când a publicat această carte, Petre DIMO avea 31 de ani și era șef de lucrări deja de doi ani, în Catedra de Calculatoare.
Cartea asupra căreia îmi îndrept acum atenția, a reprezentat pentru mine un instrument deosevbit de important în activitatea mea de cadru didactic la Secția de Informatică Economică din cadrul Facultății de Calcul Economic și Cibernetică Economică din ASE, căci țineam seminarii la disciplina de Limbaje de programare, unde limbajul FORTRAN era de bază. Parcurgerea după atâția ani a cărții lui Petre DIMO îmi stârnește emoții puternice, căci pentru mine această carte a fost un excelent ghid, datorită calităților ei, calități care s-au păstrat nealterate de-a lungul deceniilor care s-au scurs.
Cartea are o bibliografie formată din 9 titluri, din care 7 titluri conțin cuvântul cheie FORTRAN, ceea ce este esențial pentru o carte de specialitate, cunoscând exigența tânărului ei autor. Dacă țin seama că la acea vreme, o carte era depusă în editură cu un an înainte și informația circula cu mare dificultate, faptul că bibliografia nu conține autori români, arată clar că literatura română dedicată limbajului FORTRAN era foarte săracă. În Centrul de Calcul al ASE se lucra numai cu documentație tehnică de la IBM, căci nu existau lucrări de programare în FORTRAN în limba română în vremea când eu eram analist imediat după terminarea facultății, în anul 1970. Nici la biblioteca de specialitate de la etajul 7 a Centrului de Calcul nu existau cărți de FORTRAN venite din străinătate. Erau documentații, erau teze de doctorat cu programe FORTRAN, erau reviste, dar cărți de programare în limbajul FORTRAN nu erau, cu atât mai puțin cărți scrise de autori români, chiar și litografiate sau notițe de curs care să fie în circulație.
Cartea are 8 capitole după cum urmează:
- capitolul 0 intitulat Introducere de la paginile 9 - 44, conține  elemente absolut indispensabile pentru a înțelege cum se lucrează la un calculator; să nu uităm că suntem în anul 1971, când calculatoarele electronice erau niște dulapuri destul de voluminoase, când se lucra cu cartele perforate, cu bandă perforată, când banda magnetică și discul magnetic erau un lux; , iar imprimanta avea dimensiuni respectabile și foile de imprimantă erau elementul cheie pentru programatorul care aștepta rezultatele programelor lui; la pagina 24 se vorbește de programare automată, când de fapt nici în anul 2026 nu se poate încă vorbi de programare automată, deși inteligenta artificială face ravagii în dezvoltarea de software; la paginile 25 - 38 sunt detaliate aspecte de bază legate de elaborarea de scheme logice; în opinia mea, Petre DIMO este un maestru în această chestiune, căci schemele sale logice din toată cartea sunt fluente, cu urmărirea algoritmului, iar redarea lor în programe FORTRAN este mai mult decât naturală;
- capitolul 1 intitulat Elementele limbajului FORTRAN de la paginile 45 - 67,  conține  prezentarea caracterelor utilizate, definirea de constante numerice și alfanumerice cu exemplificări, construirea de variabile pentru a face programele inteligibile, cu tipurile INTEGER, REAL, DOUBLE PRECISION, LOGICAL, COMPLEX; sunt descrise variabilele elementare, tablourile unidimensionale, tablourile bidimensionale; este prezentată foaia de programare după care se perforează cartelele, iar întrebările și problemele de la paginile 65 - 67 îl ajută pe programator să se verifice dacă a înțeles corect chestiunile tratate și dacă poate merge mai departe după ce se verifică cu răspunsurile furnizate de autor la paginile 271 - 272;
- capitolul 2 intitulat  Instrucțiunile generale de intrare/ieșire de la paginile 68 - 104,  conține  detalii de prezentare a instrucțiunilor READ, WRITE și FORMAT, esențiale în citirea datelor de pe cartele și, respectiv, pentru imprimarea de rezultate obținute după execuția instrucțiunilor de prelucrare din program;
sunt prezentați descriptorii de format I, F, T, E, H, X, L, C, caracterele de control ale imprimantei, adică tot ceea ce este necesar ca programatorul să-și organizeze datele pe cartelă așa cum vrea el și să obțină rezultatele la imprimantă, tot așa cum și le dorește el, nu altfel; sunt abordate detalii practice de programare, căci trebuie luate în considerare cerințele fiecărui programator și experiența autorului cărții i-a permis să identifice acele situații cu care programatorii se întâlnesc cel mai frecvent când își organizează datele pentru a fi perforate pe cartele, respectiv, pentru a fi imprimate; ceva mai departe se prezintă și ideea de utilizare a formatelor variabile, citite de la imprimantă sau definite ca variabile inițializate ca șiruri de caractere;
- capitolul 3 intitulat Instrucțiunile de atribuire de la paginile 105 - 133, conține  acele elemente care să-l familiarizeze proprogramator cu esența limbajului FORTRAN, limbaj destinat rezolvărilor de probpleme științifice, căci FORTRAN vine de la FORmula TRANslation, adică tocmai de la necesitatea screrii corecte a expresiilor de atribuire; autorul prezintă în tabelul 3.1 operatorii aritmetici după care descrie expresiile așa cum le știm noi de la matematică și alături scrie modul în care acestea sunt scrise în FORTRAN, căutând să mențină denumirile de variabile și ordinea de efectuare a calculelor; în tabelul 3.2 sunt date restricțiile impuse de limbaj pentru tipurile de operanzi din expresiile de atribuire; sunt date detalii legate de utilizarea tipurilor INTEGER, REAL, DOUBLE PRECISION și COMPLEX, căci utilizarea atentă a tipurilor de variabile și gestionarea conversiitor de date, duce la creșterea performanței unui program; exemplul 3.9 de la paginile 117 - 118 clarifică aceste restricții; tot în acest capitol sunt prezentați operatorii logici .NOT., .AND., .OR. și constantele logice .TRUE. și .FALSE. cu care se inițializează variabile de tip LOGICAL; acest subcapitol nu este simplu deloc, dar Autorul Petre DIMO are talentul de a prezenta problematica de la simplu spre complex și de a clarifica întreaga problematică, știut fiind faptul că în programele FORTRAN apar multe situații în care se lucrează cu operatori logici și expresiile nu sunt deloc simple; cine a sris programe de complexitate un pic mai ridicată decât media, știe cât de dificilă este gestionarea expresiilor în care apar operatori logici, mai ales când nu sunt construite reguli sigure de a nu greși; programatorul FORTRAN trebuie să știe să lucreze cu operatorii relaționali .EQ., .LE., .LT., .GE., .GT. și mai ales să știe precedențele în evaluarea expresiilor complexe;
- capitolul 4 intitulat  Instrucțiuni de salt de la paginile 134 - 155,   conține prezentarea instrucțiunilor GO TO și IF în formele acceptate de limbajul FORTRAN; se știe clar că omul are o gândire ușor încâlcită și nu degeaba se spune că mulți se scarpină la nas, ducând mâna pe la ceafă; exact acest lucru se întâmplă și cu programatorii care nu zăbovesc asupra  rezolvării problemelor lor și pun în program instrucțiunile cu lopata, ceea ce duce la apariția a numeroase instrucțiuni GO TO care fac  dintr-un program simplu, o construcție aproape imposibilă; este prezentat GO TO calculat și GO TO simplu, pe care-l intuim cu toții;  programul scris de la pagina 151 arată cum se ordonează folosirea de insrrucțiuni GO TO și lucrurile devin foarte ușor de urmărit atunci când etichetele instrucțiunilor se scriu în ordine crescătoare în program; Instrucțiunea IF aritmetic este deosebit de utilă în programe și scrierea etichetelor în ordine crescătoare la linii sursă, va facilita depanarea programului; scrierea instrucțiunii IF logic în programe, are menirea de a dirija prelucrările în funcție de rezultatele calculelor și de aceea, programtorul trebuie să-și construiască propriile-i reguli pentru expresiile logice, pentru a avea întotdeauna rezultate corecte și complete ale problemelor pentru care a scris programe, mai ales când vrea să gestioneze numărul de iterații, când lucrează cu matrice de mari dimensiuni; exemplul 4.2 de la paginile 146 - 148 conține  instrucțiuni pentru calculul lui PI după o formulă de aproximare și numărul de iterații este date de o valoare epsilon, iar  expresia logică ABS(D).LT.0.0001/4. inclusă în instrucțiunea IF logic permite întreruperea iterațiilor dacă s-a atins precizia, dorită; exemplele propuse de Petre DIMO în acest capitol arată care este direcția de urmat pentru a construi programe curate, ușor de depanat; 
- capitolul 5 intitulat  Instrucțiunea de ciclare de la paginile 156 - 178, face referire la instrucțiunea DO, care implementează structura repetitivă condiționată posterior; exemplul de însumare a elementelor cu poziție pară, respectiv, a elementelor cu poziție impară, dintr-un șir de la pagina 158 arată modul de agregare a secvențelor de instrucțiuni, pentru a obține programe eficiente; prima variantă tratează distinct calculul celor două sume în cicluri diferite, iar a doua variantă reunește prelucrarea folosind un singur ciclu DO; se știe că problemele care sunt soluționate în limbajul FOTRAN au complexitate ridicată, ceea ce presupun cicluri în cicluri sau cicluri imbricate și exemplul înmulțirii a două matrici folosind secvența:
        DO 20 I=1,M
        DO 20 J=1,N
        CIJ =0.
        DO 10 K=1,L
 10   CIJ =CIJ +A(I,K) * B(K,J)
 20   C(I,J) = CIJ
are alte variante în cartea scrisă de Petre DIMO; este tratată și problema ieșirii, respectiv, revenirii în cicluri, vorbind de așa-zisele cicluri extinse; am apreciat cum este folosită instrucțiunea CONINUE, nu neapărat legată de un salt condiționat, ci și pentru frumusețea și cursivitatea secvențelor, căci delimitarea cu această instrucțiune a unui ciclu, lasă deschisă dinamica secvențelor, fără a interveni cu etichete inutile la instrucțiuni și fără a impune multe intervenții pe instrucțiuni diferite dacă trebuie făcute completări ulterioare în secvențele repetitive; exemplele 5.1 și 5.2 vin să arate eleganța obținută în secvențele de program în care apare instrucțiunea CONTINUE și apar și instrucțiuni IF aritmetic;
- capitolul 6 intitulat  Subprograme de la paginile 179 - 236,  conține  acele elemente specifice realizării de subprograme de tip FUNCTION, respectiv, subprograme de tip SUBROUTINE, cu precizări legate de listele de parametri reali din programul apelator și listele de parametri formali din subprograme; sunt prezentate subprogramele standard în tabelul 3.3 de la paginile 114 - 116 cu multe exemplificări de utilizare: exemplificarea subrpgramelor de tip FUNCTION este dată cu adunarea elementelor unui șir, subprogram scris în două variante (pagina 185) și cu funcția pentru calculul factorialului unui număr: pentru prezentarea subprogramelor de tip SUBROUTINE, autorul exemplifică produsul a două matrici, cu fix 10 linii și 10 coloane, ceea ce este un subprogram destul de rigid, din moment ce mulți autori de cărți de FORTRAN din aceeași perioadă au în lista de parametri matricele A, B, C și dimensiunile matricelor M, N, L, unde Ași B sunt matricile care trebuie înmulțite, C este matricea produs, M este numărul de linii al matricei A, N este numărul de coloane al matricei A și numărl de linii al matricei B, iar L este numărul de coloane al matricei B; tot aici sunt prezentate subprogramele SLITE, SLITET, OVERFL, foarte importante pentru a asigura fluența execuției unui program ceva mai complex; pentru a dezvolta programe în care se gestionează listele de parametri, sunt descrise instrucțiunile COMMON și EQUIVALENCE; exemplul 6.3 care generează subprogramele de calcul ale rădăcineilor ecuației de gradul al II-lea, respectiv, tipărirea acestor rădăcini, arată cu claritate de înseamnă să faci o construcție care ia în calcul toate variantele de lucru; exemplul 6.4 dedicat rezolvării unui sistem de ecuații liniare prin metoda eliminării lui GAUSS îi prilejuiește autorului realizarea unei descompuneri care să dezvolte subprograme a căror reutilizare vine mănușe pe conceptul de subprogram, ca element de economisire a efortului de programare, pentru secvențe repetitive din program; subrutinele INTERV și COEF sunt construite în acest scop;
- capitolul 7 intitulat Alte facilități de I/E. Utilizarea memoriilor auxiliare de la paginile 237 - 248, conține elemente de finețe în programare, căci instrucțiunile PAUSE, STOPPRINT, PUNCH, sunt utilizate numai și numai de programatorii care au atins un nivel cu mult peste media complexității programelor lor, în care utilizarea de fișiere pe bandă magnetică sau pe disc magnetic este absolut indispensabilă și operatorul din sala calculatorului trebuie să execute operații specifice, pentru a asigura rularea în bune condiții a programului, cu resursele cerute; problemele de utilizare a formatelor variabile sunt prezentate la un nivel excelent de autor și este bine că chestiunile speciale sunt adunate în acest capitol, căci nu toți programatorii au nevoie de toate facilitățile limbajului FORTRAN pentru a soluționa probleme specifice anului 1971, când bazele de date nu existau, când formatele de fișiere erau la nivel incipient și DEFINE FILE era ceva parcă venit de pe o altă planetă. 
Cartea are 5 anexe și anume:
Anexa 1 intitulată Indicații asupra operării de la paginile 266 -267, arată unele aspecte ale depanării programelor, când programatorii au făcut greșeli de sintaxă; exemplificarea este definirea unei etichete de mai multe ori, dar greșelile sunt și de altă natură, precum lipsa unor paranteze, folosirea incorectă a semnelor de punctuație și câte și mai câte, căci orice programator este supus greșelilor.
Anexa 2 intitulată Soluții la probleme de la paginile 268 - 289, conține soluțiile date de autor la problemele de la fiecare final de capitol. Am apreciat foarte mult această abordare specifică un or culegeri de probleme de matematică, pentru că toți care vor să facă progrese într-un domeniu, trebuie să răspundă și unor teste, iar răspunsurile trebuie verificate cumva, pentru a nu rămâne cu problema de evaluare nerezolvată. 
Anexa 3 intitulată Exemple de programe de la paginile 290-293
Anexa 4 intitulată Ordinea instrucșiunilor în program de la pagina 294 arată ordinea în care sunt puse instrucțiunile într-un program, pentru a fi asigurate condițiile definirilor corecte și complete, căci entitățile trebuie să fie distincte și aici mă refer la programul apelator și la subprogramele de tip SUBROUTINE și cele de tip FUNCTION. Operanzii mai întâi se definesc folosind tipul, EXTERNAL, DIMENSION, COMMON,  și după aceea se utilizează. Trebuie mare atenție la folosirea lui DATA și EQUIVALENCE. Ele crează facilități, dar și generează pericole. Ultima instrucțiune din program este END.
Anexa 5 intitulată Cuvintele rezervate FORTRAN, este instrumentul extrem de utili oricărui programator. Un programator lucrează tot timpul cu o carte în mână și dacă are ezitări, deschide cartea și caută ceea ce are nevoie. De regulă, programatorul verifică dacă folosește corect o instrucțiune, definită cu un cuvânt cheie. Dacă el are undeva cuvintele cheie în ordinea alfabetică și paginile din carte unde este trata în detaliu respectivul cuvânt , totul este rezolvat căci el găsește repede ceea ce are nevoie. Așa erau documentațiile IBM și așa are și Petre DIMO, iar eu, m-am folosit de paginile 295 -297 de nenumărate ori pentru a-mi rezolva problemele, așa cum o făceam cu ghidurile IBM.
Între paginile 224 și 225 se află 4 foi de programare IBM, iae la paginile 272 și 273 se află două foi de programare IBM și cititorul are posibilitatea să vadă cum arată un text sursă FORTRAN care pleacă spre perforarea cartelelor, în vederea generării fluxului normal specific rulării unui program în vederea obținerii rezultatelor de la calculator.
Multe dintre exemplele incluse de autor în carte se referă la probleme inginerești; ele nu sunt un abstacol pentru ceilalți programatori, căci autorul explică problema, realizează scrierea de formule și după aceea, trecerea la scrierea programului este o chestiune de limbaj, nu de problemă inginerească.
Unele edituri au optat să reproducă texte sursă de pe listingurile obținute de la calculator. În cazul de față, toate textele sursă au fost culese în tipografie și numai exigența autorului a făcut ca erorile date de neconcordanțele dintre textele din maniuscris și cele culese în tipografie să meargă pe principiul zero erori, specific managementului calității din producție.
Se vede cu ochiul liber că Petre DIMO a avut surse de calitate de unde a învățat să programeze în FORTRAN căci textele sursă scrise de el ți incluse în carte sunt de foarte bună calitate și rezistă chiar și exigențelor din ziua de azi. Mă voi rezuma la textul sursă scris pe foaia de programare de la pagina 63.
Primele 4 rânduri sunt comentarii care anunță că:
- programul calculează produsul a două matrici,
- dimensiunile matricilor sunt de maximum 10 linii și 10 coloane,
- matricea X se înmulțește cu matricea Y și rezultă matricea Z,
- prima matrice are L linii și N coloane, a doua matrice are N linii și M coloane.
Există instrucțiune de citire pentru L, M, N.
Există instrucțiune pentru citire foarte concentrată a elementelor matricilor X și Y.
Există o secvență clasică de 5 instrucțiuni pentru calculul elementelor din matricea produs Z.
Există instrucțiunea WRITE și instrucțiunea FORMAT pentru tipărirea elementelor matricei Z.
Am utilizat cartea lui Petre DIMO la seminariile mele. Am recomandat cartea lui Petre DIMO studenților. Pentru mine, a fost un instrument de lucru, căci ori de câte ori aveam nevoie de o lămurire, deschideam această carte și mă lămuream imediat, căci Petre DIMO a reușit să concentreze în cele 298 de pagini ale cărții, esența practicii de programare în limbajul FORTRAN.


(31 august 2026)

Sunday, August 30, 2026

Iteligența Artificială este la cheremul digitalizării noastre deficitare

 Am cerut detalii referitoare la o carte.

Am primit răspunsul:

Lucrarea „Mecanizarea evidenței contabile”, scrisă de Arpad Balint, împreună cu M. Blidea și V. Korsakovski, a fost publicată în anul 1964 la Editura Didactică și Pedagogică din București. Cartea are 196 de pagini și include figuri explicative, fiind destinată studiului metodelor mecanizate de prelucrare a datelor contabile în perioada respectivă. [1, 2]

Dorești să afli mai multe detalii despre:
  • Conținutul sau capitolele acestei lucrări?
  • Contextul istoric al mecanizării contabilității în România anilor '60?
  • Alte lucrări sau autori din acest domeniu?
Am scris:
în ASE V. KORSAKOSKI este recunoscută sub numele Vera CORSACOVSCAIA
Am primit răspunsul:
Vă mulțumesc pentru această clarificare importantă! Aveți perfectă dreptate, este vorba despre o adaptare sau transliterare de nume frecvent întâlnită în mediul academic românesc din acea perioadă.
Profesoara Vera Corsacovscaia este o figură recunoscută în istoria Academiei de Studii Economice din București (ASE) pentru contribuțiile sale timpurii în domeniul evidenței contabile și al mecanizării. Pe coperțile cărților publicate în perioada comunistă, numele ei a fost adesea trecut sub forma rusificată sau oficializată grafic ca V. Korsakovski.
Această corecție aduce multă claritate asupra identității coautorului lucrării din 1964.
Doriți să explorăm alte titluri publicate de Vera Corsacovscaia (sau sub numele de V. Korsakovski) în cadrul catedrei de contabilitate de la ASE?
Încă o dată se dovedește că fără conținut digital corect și complet, Inteligența Artificială oferă răspunsuri ce corespund acestui conținut digital deficitar.

(31 august 2026)