mirror of
https://github.com/adambard/learnxinyminutes-docs.git
synced 2024-12-23 17:41:41 +00:00
Improve section on compiling and loading source files
This commit is contained in:
parent
96a44abb1d
commit
c0d134c2d9
@ -43,7 +43,7 @@ Un oggetto incapsula le dichiarazioni e le definizioni dei predicati. Gli oggett
|
||||
:- end_object.
|
||||
```
|
||||
|
||||
# Compilazione dei file sorgenti
|
||||
# Compilazione e il caricamento dei file sorgenti
|
||||
|
||||
Supponendo che il codice di cui sopra per l'oggetto `list` venga salvato in un file` list.lgt`, esso può essere compilato e caricato utilizzando il predicato predefiniti `logtalk_load/1` o la sua abbreviazione `{}/1`, con il percorso del file come argomento (l'estensione può essere omessa):
|
||||
|
||||
@ -52,6 +52,9 @@ Supponendo che il codice di cui sopra per l'oggetto `list` venga salvato in un f
|
||||
yes
|
||||
```
|
||||
|
||||
In generale, le entità potrebbero avere dipendenze sulle entità definite in altri file di origine (ad esempio le entità di biblioteca). Per caricare un file e tutte le sue dipendenze, la soluzione consigliata consiste nel definire un file _loader_ che carica tutti i file necessari per un'applicazione. Un file loader è semplicemente un file di origine, in genere denominato `loader.lgt`, che effettua chiamate ai predicati built-in `logtalk_load/1-2`, di solito
|
||||
da una direttiva `initialization/1` per la portabilità e conformità agli standard. Caricatore file vengono forniti per tutte le librerie, strumenti ed esempi.
|
||||
|
||||
# Inviare un messaggio ad un oggetto
|
||||
|
||||
L'operatore infisso `::/2` è usato per inviare messaggi ad un oggetto. Analogamente al Prolog, è possibile fare backtracking per le soluzioni alternative:
|
||||
|
@ -40,7 +40,7 @@ An object encapsulates predicate declarations and definitions. Objects can be cr
|
||||
:- end_object.
|
||||
```
|
||||
|
||||
# Compiling source files
|
||||
# Compiling and loading source files
|
||||
|
||||
Assuming that the code above for the `list` object is saved in a `list.lgt` file, it can be compiled and loaded using the `logtalk_load/1` built-in predicate or its abbreviation, `{}/1`, with the file path as argument (the extension can be omitted):
|
||||
|
||||
@ -49,6 +49,11 @@ Assuming that the code above for the `list` object is saved in a `list.lgt` file
|
||||
yes
|
||||
```
|
||||
|
||||
In general, entities may have dependencies on entities defined in other source files (e.g. library entities). To load a file and all its dependencies, the advised solution is to define a
|
||||
_loader_ file that loads all the necessary files for an application. A loader file is simply a source file, typically named `loader.lgt`, that makes calls to the `logtalk_load/1-2`
|
||||
built-in predicates, usually from an `initialization/1` directive for portability and
|
||||
standards compliance. Loader files are provided for all libraries, tools, and examples.
|
||||
|
||||
# Sending a message to an object
|
||||
|
||||
The `::/2` infix operator is used to send a message to an object. As in Prolog, we can backtrack for alternative solutions:
|
||||
|
Loading…
Reference in New Issue
Block a user