Installare Pharo in locale

Scopri come installare Pharo in locale per risolvere gli esercizi di Exercism sulla tua macchina


Installazione

Il modo più semplice per installare Pharo è usare un download zero conf da una riga di comando del terminale.
Nota: se stai cercando di aggiornare un'installazione esistente, consulta le istruzioni per l'aggiornamento.

Gli utenti Windows che non hanno una shell in stile UNIX installata possono passare direttamente alle istruzioni per l'installazione su Windows (qui sotto).
Gli utenti Linux più esperti potrebbero invece consultare l'installazione per hacker Linux.

Installazione su Linux/OSX

Per Linux/OSX (dando per scontato che tu abbia installato Exercism e ti sia unito al track Pharo), vai nella directory /Exercism/pharo-smalltalk e digita:

curl https://get.pharo.org/64/ | bash

e avvia Pharo con gli strumenti di Exercism incollando il seguente «script di caricamento»:

./pharo-ui Pharo.image eval "
Iceberg remoteTypeSelector: #httpsUrl.
Metacello new
 baseline: 'Exercism';
 repository: 'github://exercism/pharo-smalltalk:main/releases/latest';
 load.
#ExercismManager asClass welcome.
"

Se hai problemi di TIMEOUT durante il caricamento degli strumenti, esci da Pharo e svuota la cache di git digitando:

rm -rf pharo-local/iceberg/

Poi ripeti l'esempio ./pharo-ui ... qui sopra.

Se i problemi continuano, visita il canale Discord di Pharo descritto nella pagina Pharo Community.

Se tutto funziona correttamente, dovresti vedere le barre di avanzamento del caricamento lampeggiare sullo schermo e poi apparirà una finestra del System Browser.

CONSIGLIO: Quando esci da Pharo, salva le modifiche (apri il menu Pharo e seleziona "Save and Quit"). Ora puoi avviare Pharo con Exercism già caricato, semplicemente digitando:

./pharo-ui Pharo.image

Installazione su Windows (salta per OSX/Linux)

Stiamo ancora definendo i prerequisiti migliori per gli strumenti da riga di comando su Windows, ma puoi anche installare Pharo graficamente usando il Windows Pharo Launcher (uno strumento comodo per gestire più immagini Pharo). Questo launcher è disponibile anche per OSX e Linux, se preferisci l'interfaccia grafica.

  1. Esegui il file .msi scaricato per installare il Pharo Launcher.

  2. Avvia il Pharo Launcher.

  3. Nell'angolo in alto a sinistra fai clic su "New".

  4. Nella finestra seleziona "Official distributions" tra le categorie di template.

  5. Per gli esercizi di Exercism, scegli dall'elenco dei template di immagini Pharo la versione stabile più recente (attualmente "Pharo 10.0 64-bit (stable)", quella consigliata).

  6. Fai clic per evidenziare un template di immagine, dagli un nome, poi fai clic sul pulsante di creazione dell'immagine in basso (un ingranaggio arancione).
    Crea un'immagine dal launcher

  7. Una volta scaricato, il template apparirà a destra nella tabella Existing Images. Fai clic su di esso, poi fai clic sul pulsante di avvio in alto (una freccia play verde).
    Avvia l'immagine

  8. Una volta avviata l'immagine Pharo, apri un Playground scegliendo il menu Browse e selezionando Playground, oppure usa ctrl + o + w.
    Apri il playground

  9. Infine, copia e incolla il seguente frammento nel playground:

Iceberg remoteTypeSelector: #httpsUrl.
Metacello new
 baseline: 'Exercism';
 repository: 'github://exercism/pharo-smalltalk:main/releases/latest';
 load.
#ExercismManager asClass welcome.

Poi valuta il codice incollato selezionandolo tutto, facendo clic con il tasto destro e scegliendo Do it dal menu (oppure usa ctrl + d).

Se tutto funziona correttamente, dovresti vedere le barre di avanzamento del caricamento lampeggiare sullo schermo e poi apparirà una finestra del System Browser.

Per iniziare (TUTTI)

Quando avvii Pharo, vedrai un progetto Welcome, in un System Browser (consiglio: se perdi questa finestra, puoi aprirne una nuova dal menu Tools|System Browser).

Schermata di benvenuto di Pharo

Il pannello in alto a sinistra del System Browser mostra i pacchetti presenti nel tuo ambiente, e noterai che lo script di installazione ha già configurato un pacchetto chiamato Exercism, che contiene un tag di sotto-progetto chiamato Welcome. Il secondo pannello mostra le classi, e anche qui c'è una classe chiamata Welcome. Sotto il pannello delle classi ci sono 4 pulsanti di opzione: "Flat" (mostra le classi del pacchetto), "Hier." (mostra una gerarchia di classi), "Inst. side" (mostra i metodi di istanza), "Class side" (mostra i metodi di classe e i costruttori).

Se fai clic sulla scheda Comment, puoi vedere le istruzioni più recenti per usare Pharo Exercism. Leggi i commenti e prova a eseguire il primo test.

Con altri linguaggi basati su file, di solito a questo punto passeresti al terminale e useresti la CLI di exercism per scaricare l'esercizio successivo. Pharo può lavorare con i file in modo simile, ma il suo ambiente è in realtà pensato per lavorare con oggetti vivi. Classi, metodi e codice sorgente sono curiosamente tutti oggetti, come ogni altra cosa in Pharo. Lo scoprirai meglio nel corso di questo track.

Caricare gli esercizi

Per Exercism abbiamo incluso un plugin che ti permette di scaricare e inviare gli esercizi Pharo direttamente dall'IDE. Ti basta fare clic con il tasto destro su un pacchetto di esercizi (in questo caso il pacchetto Welcome nel pannello in alto a sinistra) e selezionare la voce di menu Exercism | Fetch Exercise. Ti verrà chiesto il nome di un esercizio (ad es. hello-world) e, una volta inserito, verrà scaricato automaticamente per te.

I nomi degli esercizi si trovano nella descrizione di ogni esercizio nella pagina del tuo track Pharo (all'estrema destra). C'è un'istruzione Download con una stringa della CLI che contiene la chiave di ogni esercizio. Puoi anche usare il pulsante di copia accanto alle istruzioni della CLI e incollare l'intera stringa nel campo di richiesta del nome (la chiave verrà estratta automaticamente).

Quando hai inserito un esercizio valido, il plugin scaricherà il codice corrispondente e lo mostrerà nel System Browser, pronto per iniziare a programmare con i test.

Quando tutti i test passano, puoi inviare la soluzione usando lo stesso menu contestuale del pacchetto di esercizi (fai clic con il tasto destro sul tag del pacchetto e seleziona Exercism | Submit Exercise...)

Menu di invio di Exercism

Infine, usa il menu Exercism | View Track Progress per visitare il sito di Exercism e vedere quali altri esercizi sono stati sbloccati per te, oltre a pubblicare domande sulla soluzione che hai inviato, perché i mentori le leggano.


Lo sapevi: Quando avvii Pharo, in realtà stai ripristinando un'istantanea dell'immagine di esecuzione, simile a un'immagine di sistema operativo VMWare. È un concetto potente, che ti permette di sospendere il lavoro a metà di un'operazione, magari anche mentre stai facendo il debug di qualcosa. Alla successiva riapertura di Pharo, potrai continuare a eseguire il codice passo passo nel debugger ripristinato, o magari proseguire una riorganizzazione.

Come reimpostare il token della CLI

Se hai bisogno di reimpostare il token della CLI per un problema di sicurezza, vai sulla pagina delle impostazioni di Exercism e usa il pulsante di reimpostazione del token. Dopo averlo fatto, devi cancellare il vecchio token in Pharo Exercism valutando il seguente codice in un Playground:

ExercismHttpClient
    reset;
    promptForToken.

Come aggiornare Pharo Exercism

Di tanto in tanto potremmo aver bisogno che tu aggiorni le librerie nella tua immagine Pharo Exercism. Segui queste istruzioni