2016-03-27 7 views
6

Supponiamo che nella console Julia lo faccioC'è un modo per annullare l'uso di Julia?

using Gadfly 

E poi si rendono conto che in realtà voglio usare un diverso comando plot

using Winston 

Sembra che plot() sarà ancora utilizzare la versione Tafano. C'è un modo per fermare utilizzando Gadfly?

using !Gadfly 
!using Gadfly 
unuse Gadfly 

Qualcosa del genere?

+0

Correlati: http://stackoverflow.com/q/33927523/2541573 – Jubobs

risposta

7

Come menzionato nel collegamento di @Jubobs, al momento non esiste un modo per interrompere in modo selettivo l'uso di un pacchetto o rimuovere selettivamente una definizione dal REPL (simile al comando clear di Matlab se si ha familiarità con esso). Quindi la risposta breve è no.

Tuttavia, è possibile fare riferimento a funzioni da moduli specifici utilizzando Gadfly.plot() o Winston.plot(). Questo non ti fornisce una soluzione al tuo problema se hai già scritto il codice, ma è ancora un'opzione per il lavoro futuro.

V'è il comando workspace() ma che rimuovere tutto ciò dal moduloMain e importerà un ambiente Julia fresca. Si perderete tutte le funzioni e le variabili che sono state definite ... in modo da utilizzare con saggezza

Come @ Matt B sottolineato, non lo fai in realtà perdere le funzioni e le variabili. Vengono spostati in un modulo chiamato LastMain. Quindi, se ho una funzione definita chiamata myfunc(), e chiamo workspace(), quindi il tentativo di chiamare myfunc() al REPL comporterà uno UndefVarError. Tuttavia, potrai comunque accedere a questa funzione chiamando lo LastMain.myfunc(). Questo è vero per tutto ciò che è stato definito nel REPL prima della chiamata a workspace().

+2

In realtà non li perdi, vengono semplicemente nascosti nel modulo 'LastMain'. –

6

Come altri hanno sottolineato, non è possibile scaricare un pacchetto in Julia. L'unico modo per farlo sarebbe quello di riavviare il Julia repl. Tuttavia, se si desidera utilizzare una funzione specifica da un pacchetto, è possibile utilizzare il numero Winston.plot() o Gadfly.plot(). In questo modo, assicurerai che stai utilizzando la funzione corretta dallo spazio dei nomi desiderato.

Problemi correlati