Αναφορές

Μπορεί να είναι απαραίτητο για μερικές συναρτήσεις να επιστραφούν περισσότερες από μία τιμές. Αυτό μπορεί να επιτευχθεί επιστρέφοντας ένα διάνυσμα τιμών, αλλά πολλές φορές, είναι βολικό να χρησιμοποιήσετε το πέρασμα μιας αναφοράς σε μια μεταβλητή. Περνάτε μια αναφορά σε μια μεταβλητή σε μια συνάρτηση και η συνάρτηση θα ορίσει τη μεταβλητή για σας χρησιμοποιώντας μια αποαναφορά. Δεν πρέπει να χρησιμοποιείτε αναφορές μόνο για αυτόν το σκοπό, αλλά αυτή είναι η κύρια χρήση τους.

When using functions that return values through references in the argument list, just pass the variable name with an ampersand. For example the following code will compute an eigenvalue of a matrix A with initial eigenvector guess x, and store the computed eigenvector into the variable named v:

RayleighQuotientIteration (A,x,0.001,100,&v)

Οι λεπτομέρειες του πώς δουλεύουν οι αναφορές και η σύνταξη είναι παρόμοιες με τη γλώσσα C. Ο τελεστής & αναφέρεται σε μια μεταβλητή και το * αποαναφέρει μια μεταβλητή. Αμφότεροι μπορούν να εφαρμοστούν μόνο σε ένα αναγνωριστικό, έτσι το **a δεν είναι επιτρεπτή παράσταση στο GEL.

References are best explained by an example:

a=1;
b=&a;
*b=2;

now a contains 2. You can also reference functions:

function f(x) = x+1;
t=&f;
*t(3)

gives us 4.