582 matches
-
sunt create folosind capabilitățile native ale unei anumite aplicații mai sunt cunoscute și sub numele de macrouri aplicație. Acestea sunt create câteodată prin efectuarea de către utilizator a unor acțiuni ce sunt înregistrate, transformate în instrucțiuni, și stocate sub formă de macrouri. Instrucțiunile din astfel de macrouri sunt scrise de obicei sub formă de cod sursă al unui limbaj de macroprogramare numit de asemenea și limbaj de script ce are acces direct la elementele aplicației. Acest tip de cod sursă (sau simplu
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
ale unei anumite aplicații mai sunt cunoscute și sub numele de macrouri aplicație. Acestea sunt create câteodată prin efectuarea de către utilizator a unor acțiuni ce sunt înregistrate, transformate în instrucțiuni, și stocate sub formă de macrouri. Instrucțiunile din astfel de macrouri sunt scrise de obicei sub formă de cod sursă al unui limbaj de macroprogramare numit de asemenea și limbaj de script ce are acces direct la elementele aplicației. Acest tip de cod sursă (sau simplu sursă) mai este numit și
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
script ce are acces direct la elementele aplicației. Acest tip de cod sursă (sau simplu sursă) mai este numit și script deoarece nu va fi compilat în cod mașină sau bytecode. Editorul de text preferat de către programatori Emacs (prescurtarea de la "macrouri editor") urmărește această idee spre o concluzie. De fapt, mare parte din editor este construit din macrouri.Emacs a fost inițial gândit ca un set de macrouri în limbajul de editare TECO; a fost mai apoi rescris în versiuni de
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
este numit și script deoarece nu va fi compilat în cod mașină sau bytecode. Editorul de text preferat de către programatori Emacs (prescurtarea de la "macrouri editor") urmărește această idee spre o concluzie. De fapt, mare parte din editor este construit din macrouri.Emacs a fost inițial gândit ca un set de macrouri în limbajul de editare TECO; a fost mai apoi rescris în versiuni de Lisp. Pe măsură ce piața de software s-a maturizat aplicațiile comerciale și cele open-source au migrat de la versiunile
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
cod mașină sau bytecode. Editorul de text preferat de către programatori Emacs (prescurtarea de la "macrouri editor") urmărește această idee spre o concluzie. De fapt, mare parte din editor este construit din macrouri.Emacs a fost inițial gândit ca un set de macrouri în limbajul de editare TECO; a fost mai apoi rescris în versiuni de Lisp. Pe măsură ce piața de software s-a maturizat aplicațiile comerciale și cele open-source au migrat de la versiunile proprietar de limbaje de descriere a macrourilor spre limbajele de
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
un set de macrouri în limbajul de editare TECO; a fost mai apoi rescris în versiuni de Lisp. Pe măsură ce piața de software s-a maturizat aplicațiile comerciale și cele open-source au migrat de la versiunile proprietar de limbaje de descriere a macrourilor spre limbajele de tip script ce au fost mai întâi incluse, iar acum sunt foarte bine documentate și testate dovedindu-și fiabilitatea, în browerele de web. De exemplu limbajul JavaScript a fost inclus în pachetul office OpenOffice.org ca suport
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
documentate și testate dovedindu-și fiabilitatea, în browerele de web. De exemplu limbajul JavaScript a fost inclus în pachetul office OpenOffice.org ca suport pentru scrierea de script-uri ce pot fi folosite la automatizarea unor activități și la înregistrarea de macrouri. De fapt prin publicarea API-ului acestei aplicații utilizatorul poate folosi orice limbaj de nivel înalt, de exemplu Java, ce poate accesa în mod direct funcțiile acestei interfețe programabile de aplicație. Deoarece actualele limbaje de descriere a macrourilor sunt foarte
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
înregistrarea de macrouri. De fapt prin publicarea API-ului acestei aplicații utilizatorul poate folosi orice limbaj de nivel înalt, de exemplu Java, ce poate accesa în mod direct funcțiile acestei interfețe programabile de aplicație. Deoarece actualele limbaje de descriere a macrourilor sunt foarte puternice și au acces la o gamă foarte largă din funcțiile de bază ale sistemului de operare, este de la sine înțeles că autorii de cod malițios vor concepe și viruși bazați pe aceste facilități. Datorită ușurinței cu care
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
securitatea sistemului de operare Linux, de exemplu, și exclud în mod deliberat anumite funcționalități ce ar putea fi exploatate de virușii de tip macro. Limbaje de programare cum ar fi C și limbajul de asamblare au un sistem simplu de macrouri, implementate ca preprocesoare la compilator sau asamblor. Macrourile preprocesorului C funcționează ca o simplă operațiune de căutare și modificare textuală la nivelul de element de sintaxă, deci nu lucrează la nivel de caracter. O utilizare tipică pentru macrouri este întâlnită
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
exclud în mod deliberat anumite funcționalități ce ar putea fi exploatate de virușii de tip macro. Limbaje de programare cum ar fi C și limbajul de asamblare au un sistem simplu de macrouri, implementate ca preprocesoare la compilator sau asamblor. Macrourile preprocesorului C funcționează ca o simplă operațiune de căutare și modificare textuală la nivelul de element de sintaxă, deci nu lucrează la nivel de caracter. O utilizare tipică pentru macrouri este întâlnită în sistemul de tehnoredactare computerizată TeX și derivatele
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
simplu de macrouri, implementate ca preprocesoare la compilator sau asamblor. Macrourile preprocesorului C funcționează ca o simplă operațiune de căutare și modificare textuală la nivelul de element de sintaxă, deci nu lucrează la nivel de caracter. O utilizare tipică pentru macrouri este întâlnită în sistemul de tehnoredactare computerizată TeX și derivatele acestuia, la care cea mai mare parte a funcționalității este bazată pe macrouri. MacroML este un sistem experimental ce caută să reconcilieze editarea tipizată și sistemele de macrouri. Nemerle are
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
la nivelul de element de sintaxă, deci nu lucrează la nivel de caracter. O utilizare tipică pentru macrouri este întâlnită în sistemul de tehnoredactare computerizată TeX și derivatele acestuia, la care cea mai mare parte a funcționalității este bazată pe macrouri. MacroML este un sistem experimental ce caută să reconcilieze editarea tipizată și sistemele de macrouri. Nemerle are o sintaxă tipizată de macrouri, și o metodă constructivă de abordare a acestor tipuri de sintaxă a macrourilor este calculul multi-stadiu. Alte exemple
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
tipică pentru macrouri este întâlnită în sistemul de tehnoredactare computerizată TeX și derivatele acestuia, la care cea mai mare parte a funcționalității este bazată pe macrouri. MacroML este un sistem experimental ce caută să reconcilieze editarea tipizată și sistemele de macrouri. Nemerle are o sintaxă tipizată de macrouri, și o metodă constructivă de abordare a acestor tipuri de sintaxă a macrourilor este calculul multi-stadiu. Alte exemple: Limbajul PL/I este unic în modul în care se scriu macrourile sale, folosind chiar
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
de tehnoredactare computerizată TeX și derivatele acestuia, la care cea mai mare parte a funcționalității este bazată pe macrouri. MacroML este un sistem experimental ce caută să reconcilieze editarea tipizată și sistemele de macrouri. Nemerle are o sintaxă tipizată de macrouri, și o metodă constructivă de abordare a acestor tipuri de sintaxă a macrourilor este calculul multi-stadiu. Alte exemple: Limbajul PL/I este unic în modul în care se scriu macrourile sale, folosind chiar sintaxa limbajului, acestea fiind un subset al
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
a funcționalității este bazată pe macrouri. MacroML este un sistem experimental ce caută să reconcilieze editarea tipizată și sistemele de macrouri. Nemerle are o sintaxă tipizată de macrouri, și o metodă constructivă de abordare a acestor tipuri de sintaxă a macrourilor este calculul multi-stadiu. Alte exemple: Limbajul PL/I este unic în modul în care se scriu macrourile sale, folosind chiar sintaxa limbajului, acestea fiind un subset al acestui limbaj: compilatorul execută "instrucțiuni de preprocesor" în momentul compilării, și rezultatul acestui
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
și sistemele de macrouri. Nemerle are o sintaxă tipizată de macrouri, și o metodă constructivă de abordare a acestor tipuri de sintaxă a macrourilor este calculul multi-stadiu. Alte exemple: Limbajul PL/I este unic în modul în care se scriu macrourile sale, folosind chiar sintaxa limbajului, acestea fiind un subset al acestui limbaj: compilatorul execută "instrucțiuni de preprocesor" în momentul compilării, și rezultatul acestui proces constituie o parte din codul ce este compilat. Capacitatea de a utiliza limbajul procedural familiar în
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
chiar sintaxa limbajului, acestea fiind un subset al acestui limbaj: compilatorul execută "instrucțiuni de preprocesor" în momentul compilării, și rezultatul acestui proces constituie o parte din codul ce este compilat. Capacitatea de a utiliza limbajul procedural familiar în descrierea de macrouri determină creșterea puterii și constituie un avantaj față de metodele simple de macrosubstituție, aceasta determinând în aceeași măsură creșterea dimensiunii și complexității compilatorului, odată cu scăderea vitezei acestuia. Majoritatea limbajelor de asamblare au implementat modele mult mai simpliste de macrouri procedurale, de
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
descrierea de macrouri determină creșterea puterii și constituie un avantaj față de metodele simple de macrosubstituție, aceasta determinând în aceeași măsură creșterea dimensiunii și complexității compilatorului, odată cu scăderea vitezei acestuia. Majoritatea limbajelor de asamblare au implementat modele mult mai simpliste de macrouri procedurale, de exemplu dau posibilitatea de a repeta o porțiune de cod de N ori pentru desfacerea buclelor; dar acestea au o sintaxă complet diferită față de limbajul de asamblare pentru care au fost proiectate. Sintaxa limbajului Lisp este foarte favorabilă
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
de exemplu dau posibilitatea de a repeta o porțiune de cod de N ori pentru desfacerea buclelor; dar acestea au o sintaxă complet diferită față de limbajul de asamblare pentru care au fost proiectate. Sintaxa limbajului Lisp este foarte favorabilă pentru macrouri; limbajele din familia Lisp, cum ar fi Common Lisp și Scheme, au implementate sisteme foarte puternice de macrouri. Macrourile Lisp transformă însăși structura programului, cu toată sintaxa la dispoziție pentru a exprima astfel de transformări. Common Lisp și Scheme diferă
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
acestea au o sintaxă complet diferită față de limbajul de asamblare pentru care au fost proiectate. Sintaxa limbajului Lisp este foarte favorabilă pentru macrouri; limbajele din familia Lisp, cum ar fi Common Lisp și Scheme, au implementate sisteme foarte puternice de macrouri. Macrourile Lisp transformă însăși structura programului, cu toată sintaxa la dispoziție pentru a exprima astfel de transformări. Common Lisp și Scheme diferă în modul de implementare a sistemelor de macrouri. Sistemul Scheme este bazat pe potrivirea modelelor, în timp ce macrourile lui
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
au o sintaxă complet diferită față de limbajul de asamblare pentru care au fost proiectate. Sintaxa limbajului Lisp este foarte favorabilă pentru macrouri; limbajele din familia Lisp, cum ar fi Common Lisp și Scheme, au implementate sisteme foarte puternice de macrouri. Macrourile Lisp transformă însăși structura programului, cu toată sintaxa la dispoziție pentru a exprima astfel de transformări. Common Lisp și Scheme diferă în modul de implementare a sistemelor de macrouri. Sistemul Scheme este bazat pe potrivirea modelelor, în timp ce macrourile lui Common
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
Common Lisp și Scheme, au implementate sisteme foarte puternice de macrouri. Macrourile Lisp transformă însăși structura programului, cu toată sintaxa la dispoziție pentru a exprima astfel de transformări. Common Lisp și Scheme diferă în modul de implementare a sistemelor de macrouri. Sistemul Scheme este bazat pe potrivirea modelelor, în timp ce macrourile lui Common Lisp lucrează sub modelul de funcții ce transformă textul programului. Fiind în măsură să aleagă ordinea de evaluare (vezi procedeul de evaluare leneșă ("lazy") și funcțiile relaxate) se creează
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
de macrouri. Macrourile Lisp transformă însăși structura programului, cu toată sintaxa la dispoziție pentru a exprima astfel de transformări. Common Lisp și Scheme diferă în modul de implementare a sistemelor de macrouri. Sistemul Scheme este bazat pe potrivirea modelelor, în timp ce macrourile lui Common Lisp lucrează sub modelul de funcții ce transformă textul programului. Fiind în măsură să aleagă ordinea de evaluare (vezi procedeul de evaluare leneșă ("lazy") și funcțiile relaxate) se creează posibilitatea definirii unor noi constructe sintactice (adică structuri de
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
pot fi distinse de cele deja definite în limbajul de programare. De exemplu, într-o versiune a limbajului Lisp ce are definită structura codice 1 dar îi lipsește codice 2, este posibilă definirea acesteia din urmă în termenii celei dintâi structuri folosind macrouri. Întregi extensii importante la sintaxa limbajului Lisp, cum ar fi Sistem de Obiecte Common Lisp au fost definite sub formă de macrouri. Macrourile dau de asemenea posibilitatea definirii limbajelor de descriere a datelor ce sunt în mod automat convertite în
Macrosubstituție () [Corola-website/Science/309495_a_310824]
-
structura codice 1 dar îi lipsește codice 2, este posibilă definirea acesteia din urmă în termenii celei dintâi structuri folosind macrouri. Întregi extensii importante la sintaxa limbajului Lisp, cum ar fi Sistem de Obiecte Common Lisp au fost definite sub formă de macrouri. Macrourile dau de asemenea posibilitatea definirii limbajelor de descriere a datelor ce sunt în mod automat convertite în cod caracter prin compilare, ceea ce înseamnă că unele constructe ca de exemplu mașinile de stare pot fi implementate într-un mod și
Macrosubstituție () [Corola-website/Science/309495_a_310824]