Sulla via dell'Illuminismo: Schema, Lisp comune, Clojure? [chiuso]


26

Molte persone più intelligenti di me continuano a scrivere quando impari a Lisp che ti rende un programmatore migliore perché lo "capisci".

Forse tutto ciò che sento su Lisp (s) che cambia la tua vita è solo una grande battuta pratica sui neofiti, ma immagino che non ci sia nulla di male nel sapere di più sul mondo, anche se scopro di essere stato inviato dopo uno snipe o qualcosa del genere .

Mi piacerebbe seguire il libro SICP, o ANSI Common Lisp, ma allo stesso tempo studiare un dialetto e un'implementazione che potrei continuare a utilizzare su progetti personali.

SICP è focalizzato su Scheme, quindi è un grande voto. Paul Graham disse che se avesse insegnato ai neofiti lo avrebbe fatto in Scheme, ma sembrava che Scheme fosse ancora inferiore al Common Lisp. Ma poi c'è Clojure, che mi viene detto è limitato in alcuni modi, ma più pratico in altri (librerie JVM).

Sembra che potrei superare i materiali dello Schema più facilmente, ottenere l'illuminazione "reale" da CL, o avvicinarmi abbastanza con Clojure ed essere in grado di farne di più a lungo termine.

Quanto di tutto ciò è vero? Quando dovrei smettere di pensare a cosa imparare e semplicemente andare a conoscerlo?


4
+1 ma fai attenzione, non sono tutti carini qui, guarda cosa è successo a questo: programmers.stackexchange.com/users/39479
Cedric Martin


1
Ciao Conrad, "quale lingua dovrei imparare dopo?" non è in argomento qui.

@MarkTrapp Le mie scuse. Ho pensato che la domanda "Qual è la lingua migliore per [x]?" era ancora in discussione perché si trattava di scegliere lo strumento giusto per il lavoro. Ho pensato che c'erano molte persone che vogliono conoscere i compromessi dello studio di qualcosa con una reputazione accademica rispetto a uno strumento simile che ha accesso a una piattaforma consolidata. Questo è ancora motivo di chiusura?
Conrad.Dean,

2
@MarkTrapp Mi capita di pensare che questa sia una buona domanda. All'inizio il panorama lisp può essere fonte di confusione e l'OP ha alcuni criteri specifici per aiutare le persone a giudicare una risposta adeguata. Penso che questa domanda non sia tanto vaga quanto "Quale lingua dovrei imparare dopo?".
Benekastah,

Risposte:


19

Forse tutto ciò che sento su Lisp (s) che cambia la tua vita è solo una grande battuta pratica per i neofiti

Assolutamente no, non è uno scherzo.
Con Lisp costruirai qualsiasi cosa tu voglia, anche il tuo linguaggio di programmazione.

Sarai illuminato, qualunque cosa tu scelga, che sia CL, Scheme o Clojure.
Personalmente ti consiglio di imparare Clojure poiché è un Lisp attivo, un dialetto pratico che supporta la programmazione concorrente in modo elegante e gira su JVM (enorme punto di vendita).

ClojureScript porta Lisp nella programmazione lato client che è davvero una cosa interessante.

E a proposito, SICP è disponibile in Clojure .

Benvenuto a bordo :)


La traduzione Clojure di SICP è davvero entusiasmante per me. L'ultima volta che l'ho verificato era ancora un lavoro in corso, ma ormai deve essere ancora più avanti. Qualcuno può commentare come questa traduzione conserva ancora il nirvana che si ottiene leggendo SICP?
Conrad.Dean,

@ Conrad.Dean: Beh, ha ancora un avvertimento abbastanza importante: "Non dovresti essere ancora qui. In realtà, sei più che benvenuto a guardarti intorno. Eviterò di mettere su qualsiasi gif di coni stradali e segnali di stop , ma questo sito è molto in costruzione e non è ancora vicino al punto di essere utile ".
Jerry Coffin,

3
La chiusura della traduzione SICP è MORTA dal 2009, il che è triste perché le soluzioni esistono nel clojure ...
AndreasScheinert

se vuoi davvero cambiare la tua vita, impara, schema, prologo e C, in quell'ordine. Python vale anche una o due annusate. Quindi, se la tua testa non è ancora esplosa, vai a progettare i tuoi linguaggi di programmazione o aiuta a perfezionare altri nuovi linguaggi.
Sam Watkins,

7

Sembra che potrei superare i materiali dello Schema più facilmente, ottenere l'illuminazione "reale" da CL, o avvicinarmi abbastanza con Clojure ed essere in grado di farne di più a lungo termine.

Non aspettarti miracoli. Lavorare in un linguaggio come Scheme allargherà i tuoi orizzonti e probabilmente ti insegnerà un po 'su come vengono eseguiti i programmi, ma non è un biglietto espresso per la Sfera della Coscienza Infinita.

Quando dovrei smettere di pensare a cosa imparare e semplicemente andare a conoscerlo?

Circa 7 secondi dopo aver finito di leggere questa risposta.


5

Se vuoi iniziare con SICP, segui lo schema, proprio perché è quello che insegna il libro. Passare da Scheme a Clojure sarà abbastanza facile.


Puoi commentare se i punti principali di SICP si traducono nel progetto SICP in Clojure o se si perde qualcosa tra lo schema e il clojure?
Conrad.Dean,

1
Ad essere onesti È passato troppo tempo da quando ho lanciato il SICP e non ho trascorso molto tempo con Clojure. L'importante di SICP non è lo schema, ma la comprensione del modello di calcolo su cui stanno lavorando.
Zachary K,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.