Archivi Categorie: Novità

Eple per chi vuole cominciare da piccolo

It stands for “apple” in norwegian and it is an acronym for
EPLE Programming Learning Environment

unica

Quando io dovevo iscrivermi al secondo anno del Poli (in realtà era già tardi ma prima non lo sapevo ancora, e poi tutti i miei amici di Poli…) ho dichiarato che volevo andare su ingegneria informatica.
“Cos’è quella roba lì?” chiese mio padre.
“Quella che si occupa dei calcolatori” risposi, me l’ero preparata. In realtà dissi “cervelli elettronici” perché allora si chiamavano così.
Sapevo che mio padre sarebbe stato molto contrario e mi stupì che non dicesse niente. Ma, forse, era solo stato preceduto dalla mamma che mi convinse con “è una moda passeggera, tempo un paio d’anni e non ne sentiremo più parlare”.
Continuai con ingegneria civile, credo che oggi si chiami edile. Ma ho sempre trafficato con i ‘puter. Di diversi tipi e dimensioni, sempre più piccole, fino a quando non c’è più stato spazio per la tastiera.

E, naturalmente, per me calcolatore = cosa che serve a fare calcoli, quelli che farli a mano sarebbe troppo lungo. Anche se devi saperli fare, per controllare le istruzioni che gli dai, lo chiamano debug.
Quando ho cominciato a lavorare io c’erano ormai i TTY, sì a volte ancora le schede ma era roba del passato. Un’altra cosa che sarebbe dovuta essere del passato e invece no erano le due generazioni precedenti di operatori: quella che lavorava in assembler (si dovrebbe dire assembly, lo so e lo so che lo sapete) e quella che lavorava in FORTRAN IV, proprio come se fosse assembler (assembly). E siccome erano i capi comandavano loro.

Poi a un certo punto sono usciti i personal, cosine costose e inguardabili se viste adesso. Ma con loro è nata una generazione di giovani (non si chiamavano digitali ma lo erano) che dopo un po’ smettevano di giocare e facevano cose in Basic. Programmi orrendi per come erano scritti, tipo tante istruzioni sulla stessa riga separate da due-punti fino a quando la riga stessa diventava troppo lunga. C’era chi iniziava il FOR con dichiarazione del ciclo, poi ci metteva tutto il corpo e il NEXT finiva da solo su una nuova riga. Ma il mondo sarebbe stato loro.
Poi anche il Basic è passato di moda: oggi con il SO (operating system) non te lo danno, e è anche difficile trovarlo. E allora se una ragazza o un ragazzo come si deve vuole imparare fin da subito?
C’è qualcosa in giro, da parecchio tempo. E ultimamente c’è una novità: la tesi di Pier Giuliano Nioi, piergiu.

eple

È quasi un peccato che io sappia già trafficare con il ‘puter (anche se in realtà non mi capisce quasi mai) perché il piergiu (io lo pronuncio con l’accento sulla u) ha sviluppato un’app decisamente bella. Ho tentato per qualche giorno di farne un riassunto, una recensione ma vi conviene vederla da lui. Trovate il PDF che vi dice tutto e l’applicazione completa qui: An Interactive Environment for the Didactical Manipulation of Programs.

Ditegli che vi mando io (“Juhan send me“) se volete, ma anche no.

education

Adesso non so a se piergiu piaccia questo post messo così ma dovevo farlo, guarda oggi che cinguettio ho visto: Localized (Visual) Programming Language For Kids?

Quando si dice la combinazione ;-) :-D

Pronti per Lubit?

logo-m

Allora ne so ancora poco perché il team (wonderful team!) non ha ancora postato molto, solo immagini, principalmente su Twitter, di lavoro durante lo sviluppo, eccone qualcuna:

lo

menu

doc

pics

Da oggi c’è il sito ufficiale, Lubit Linux @ http://lubit.org/ (che per adesso è vuoto ma prossimamente…

Intanto il mio in bocca al pinguino (lo so che non è granché, non me n’è venuto niente di meglio), presto una recensione come si deve.

E se posso dare un consiglio alla squadra lo faccio citando le parole del mio amico Albert: everything should be made as simple as possible, but not simpler.

Sviluppare codice per il kernel Linux

Non è facilissimo sviluppare codice per il kernel Linux, soprattutto quando si tratta di sperimentare un nuovo scheduler. Se c’è un bug nel codice, il kernel si pianta prima di subito! E non è facile capire perché sia crashato, non è che potete usare il debugger, sapete? Si, ci sono degli strumenti che permettono di fare un minimo di debug; però non è facilissimo usarli, e comunque fare “il giro” di compilazione, boot, crash, caricamento della traccia e ispezione visiva prende un mucchio di tempo.

Ah, se si potesse sviluppare in spazio utente: se si pianta il programma basta riavviarlo; si possono usare debugger, tracce, printf, ecc. in maniera molto più semplice ed efficace!

Beh, Fabio, Juri e io abbiamo lavorato un po’ a questo problema nell’ultimo mese. Juri è uno studente di dottorato che tra le altre cose fa il maintainer di SCHED_DEADLINE, un nuovo scheduler real-time per Linux; Fabio sta facendo la tesi di laurea con il sottoscritto, e la tesi consiste nello sviluppo di una struttura dati lock-free per lo scheduler. Per sviluppare la struttura dati in maniera efficace, invece di farlo direttamente nel kernel, abbiamo deciso di farlo in user-space. Per cui, ecco PRAcTISE, un framework per sviluppare scheduler per Linux in user-space. E dato che ci sembrava un lavoro ben fatto, lo abbiamo descritto in un paper che abbiamo appena submittato a OSPERT, un workshop specializzato.

E quindi, niente: il paper è stato appena spedito, andrà in peer-review e non sappiamo ancora se sarà accettato. Tra l’altro, tanto per cambiare, l’abbiamo scritto in fretta, quindi speriamo di non averci infilato tante cappellate. Nel frattempo, se volete potete leggerlo, scaricarvi il software e provarlo, e mandarci commenti, oppure provare a collaborare. Siete tutti benvenuti!

Linguaggi regolari – una segnalazione.

Lo so che ci sono altri argomenti, ho quasi pronto un altro post su Go, un altro in via di stesura su Python e un altro per Windows e tant’altro ancora ma prima una segnalazione. Se la cosa funziona questo tipo di comunicazioni potrebbero ripetersi periodicamente, vedremo.

Uno dei blog che seguo da più tempo è Good Math, Bad Math — ne ho già parlato. Oggi MarkCC ha un post (purtroppo si fanno sempre più rari) davvero intrigante. Ed è solo la prima parte di una serie che spero lunga e con periodicità breve :-D
Insomma si parla di linguaggi regolari. Il consiglio che credo di dovervi dare è che fareste bene a seguirlo: RSSate il blog, subito.
Un’altra caratteristica del blog è che ogni post genera una discussione che si sviluppa in una lunga serie di commenti e MarkCC risponde sempre, chiarendo e a volte ampliando il discorso.

Un’osservazione OT ma non così peregrina. Come anche altri MarkCC usa l’acronimo FSM per indicare finite state machine, cosa senz’altro buona e giusta, almeno finchè si evitano confusioni con Sua Pastosità the Flying Spaghetti Monster, quello che viene bollito per il nostro appetito, RAmen.

Python for Informatics: un ottimo manuale facile e completo

Un post atipico, non so se vale ma io ci provo 8)
Anzi non un post e neanche una recensione, solo la presentazione di un libro. Che mi sembra fatto molto bene, anche se non l’ho letto –sembro un professionista 8)


È un manuale per un corso universitario per studenti che non faranno probabilmente i programmatori ma dovranno di sicuro confrontarsi con l’informatica e allora:

[w]riting programs (or programming) is a very creative and rewarding activity. You can write programs for many reasons ranging from making your living to solving a difficult data analysis problem to having fun to helping someone else solve a problem. This book assumes that everyone needs to know how to program and that once you know how to program, you will figure out what you want to do with your newfound skills.

Non presume nessuna conoscenza, va bene per il niubbo armato di buona volontà. Ed è molto completo; Python non avrà più segreti (o quasi).
Liberamente scaricabile come PDF da qui.

Ottimo anche il sito dell’autore, link sulla stessa pagina.

In questi giorni sto cominciando a cinguettare, sono _juhan. Devo ancora imparare ma in ogni caso il limite del cinguettio non mi avrebbe certo consentito di metterci dentro tutto questo. Ma ci metterò il link.

Un’altra cosa: l’inglese è un problema per voi cara dozzina di lettori? Se sì sappiate che in ogni caso continuerò su questa strada. La colpa non è mia ma del mondo: si ostinano tutti a non usare il piemontese :-(

Aggiornamenti & news

In questi giorni sto facendo amicizia con un puffino,

per cui niente post di quelli che richiedono tempo, cioè niente codici 8)

Però non posso passare tutto il tempo a leggere manuali e provare comandi a volte piuttosto particolari: per esempio quello che (quasi) tutti scriverebbero print qui diventa disp. Promette di essere interessante ma oggi faccio altro, quello che il mio amico e mentore Picchio chiamerebbe ca$$eggio stralollistico: Picchio rockz! 8)

Aggiornamenti post su newLISP

Ad agosto quando tutti erano in ferie e io dovevo stare in casa e mi sentivo solo ho riscoperto una cosa meravigliosa che nel frattempo era cresciuta e ne ho voluto far parte tutti (anche se in quel mese, giustamente, le visite al blog erano scarsine). Sto parlando di newLISP, ovviamente. Ma, c’è sempre un ma, o anche più di uno, pur essendo a conoscenza del mantra #0 –”e leggere quel ROT13(‘pnmmb’) di manuale” il manuale di wordpress, ahehmm, come dire, no, quel pezzo l’avevo saltato.
Ma poi l’ho ritrovato, a novembre quando sono rimasto senza rete.

Per farla breve ho scoperto come inserire nel blog il sorgente newLISP e così oggi ho aggiornato i post newLISP e newLISP, cont.

Zenity e il suo successore YAD

Tempo fa ho raccontato anche di Zenity qui e qui. Da un po’ di tempo Zenity non viene aggiornato, d’accordo che va bene così com’è ma l’evoluzione…, e allora qualcuno ha pensato di rifarlo in versione 2010; ed è nato YAD (yet another dialog). Io avevo pensato di dedicargli un post, ho anche fatto un pasticcio da n00b (niubbo) che se non era per Muflone (grazie ancora Fabio!) avrei dovuto riformattare e rinstallare millemila robe, ma poi c’è l’amico Lightuono che sta facendo un ottimo lavoro. Andate da lui e dite che vi mando io. Per adesso ha postato questo, questo e questo e continuerà ancora: Lightuono lightenz! 8)

Il prompt del terminale

Essendo della vecchia scuola, anzi essendo vecchio a dirla tutta, uso spesso il terminale e trovo comodissimi i comandi, basta memorizzarne qualche zillione, ricordarli con le loro opzioni e il ‘puter fa tutto quello che vuoi, o quasi.
Quando io ero piccolo il prompt era qualcosa come $ o # ed era cosa buona e giusta. Poi si è diversificato, complessificato, ingigantito. Ecco alle volte il prompt usuale quello che riporta la directory corrente (quella di pwd) occupa tutta la riga o anche di più. Ed è inutile perché la stessa informazione la trovate sulla barra del titolo.
Allora io mi sono stufato e quello che era


è ora


Per far questo ho modificato ~/.bashrc così:
1) settare il prompt a colori, in modo da distinguere facilmente dov’è l’ultimo comando
force_color_prompt=yes
2) indicare solo la base della directory (cioè) la parte dopo l’ultimo slash
PS1='\[33[01;31m\]* : \W \$\[33[00m\] '
attenzione che W dev’essere maiuscolo. Poi naturalmente si può cambiare anche il colore, o metterne di più, non c’è mai limite al peggio ;-)
I colori, e tanto altro, te li dice Ramesh, qui

Inoltre

Per chi non conosce ROT13 può sempre chiedere a Linda.

Python – risorse in italiano & soddisfazioni

Quando si dice la serendipity! ;-)
Cercavo altro, davvero, lo giuro sulla testa dei figli di Silvio :-D
OK, cercavo documentazione in ‘tagliano (io l’englisho non lo capisco, guardo solo le figure).

Comunque, a farla breve, sono capitato qui: http://wiki.python.org/moin/ItalianLanguage

E indovinate cosa c’è nella lista dei blogs?
Ebbene sì! due volte, oltre che okpanico c’è anche un vecchio post preparatorio per okpanico su scacciamennule, il blog dl dr. prof che tutti dovrebbero leggere.

Adesso un’altra cosa che non ci crederete neanche se ripeto i giuramenti di cui sopra ballando il bunga bunga: la pagina in questione è fatta da Carl Trachte che attualmente si trova a Las Cruces, New Mexico, USA.
Io in New Mexico non ci sono mai stato e neanche nel Mekiko vero, quello sotto, quello di ¡Que viva México!.
E Carl non lo conosco, le pagine se le è trovate perché sono importanti :-D
Oppure, come diceva un cantautore della mia generazione “La CIA ci spia” :-D
O è Google? ;-)

Adesso vado a dirlo alla mamma (che non legge il mio blog) e cerco dov’è Las Cruces, chissà se è molto distante da Broccolino e se ci si può arrivare con l’autobus?

Maverick Meerkat e wmctrl – un piccolo bug

Maverick Meerkat, codice fiscale Ubuntu 10.10, sembra OK. E si presenta molto bene anche riguardo all’aspetto grafico. Qualcuno ha avuto a che ridire sull’ombra che le finestre proiettano sul desktop e sulle finestre sottostanti ma a me piace, assai. Piuttosto è difficile ridimensionare le finestre se non si opera sull’angolo a destra in basso. E le barre di scorrimento sono forse un pochino strette. Bello anche il nuovo font, molto leggibile.

Una cosa che mi aspettavo e invece non è arrivata sono i windicators.

Non sono il solo ad aver pensato di aver sbagliato qualcosa :-D

Forse ci saranno in futuro, forse sono già passati di moda. Ma a parte questo bel lavoro Canonical :-D

Poi ho scoperto che wmctrl non fa il suo dovere :-( Io dipendo da wmctrl :-(

E stavo già per prendermela con Tomas Styblo.

È andata così: una delle opzioni di wmctrl è R che

-R <WIN>             Move the window to the current desktop and
activate it.

ma non funziona in Maverick! Invece di spostare la finestra nello spazio di lavoro (workspace) corrente ti sposta nello spazio di lavoro in cui la finestra è aperta. Per testarla ho creato un semplice lanciatore personalizzato sul pannello superiore, visualizzato in figura.

Ma Tomáš (notati gli accenti?) è innocente! Non è stato lui. E basta una googlata (come farei se non esistesse Google?) e si trovano tutte le informazioni che servono e che possiamo verificare agevolmente

Ecco! Trovato! Mozart e VLC sono sul workspace 2 e non 0 come indicato. Al solito il primo (il più a sinstra) è 0, il più a destra 3; spesso vengono indicati con i numeri 1..4.

Signori di Compiz provvedete: mica posso continuare così ;-)

Credo che Tomáš (quello degli accenti esotici) meriti un post ulteriore per le sue geekerie; prossimamente, forse.

Come leggere un blog sull’e-reader

Premessa

Qualche settimana fa mi è arrivato a casa un Kindle nuovo di pacca. E’ davvero un bell’oggetto, dal prezzo molto interessante, lo consiglio a tutti. Perché ho comprato proprio un kindle e non il ben più luccicoso aiped? Che me ne faccio?

Dovete sapere che ho difficoltà a leggere sullo schermo LCD. Per “leggere” intendo: leggere libri, articoli, tesi, documenti più lunghi di un paio di pagine. Non so da cosa dipenda: i miei occhi (e più probabilmente il mio cervello) si stancano presto, dopo due minuti devo smettere. Penserete che è un bel problema per uno che con l’informatica ci lavora. Ma in realtà, programmare, leggere e scrivere e-mail, scrivere in generale, mi riesce abbastanza bene. Sarà che quando scrivo distolgo molto lo sguardo dal video. Insomma, se “interagisco” non mi da fastidio più di tanto. Leggere a lungo invece sì. Forse dipende dal mio stato di senior, oppure la cervicale che mi perseguita da un paio di anni a questa parte. Boh. Insomma, se devo leggere qualcosa di lungo, devo prima stamparlo, con buona pace del problema della deforestazione.

E-reader

Gli e-reader come il kindle, invece, utilizzano una tecnologia denominata e-ink, che fa sembrare il dispositivo un foglio di carta stampata. In effetti lo schermo non è luminoso, ed è per questo che non mi da affatto fastidio. E si può leggere in qualunque condizione di luce (ma non al buio, naturalmente!). Se volte sapere come funziona, potete riferirvi alla pagina di wikipedia o a qualche rivista di tecnologia. In breve si tratta di una matrice di microsfere, ognuna delle quali contiene delle particelle cariche elettricamente, di colore bianco e nero. Applicando un opportuno campo elettrico, le particelle si orientano e la parte superiore della sfera si “colora” di bianco, nero o grigio. La cosa bella è che togliendo il campo elettrico le particelle rimangono al loro posto a causa di un fluido viscoso all’interno della sfera. Ecco una figura esplicativa (sempre da wikipedia):

Electrophoretic display

Bello vero? peccato sia solo in bianco e nero. Ma non preoccupatevi. c’è gente che sta lavorando alacremente per metterci il colore (ma con un tipo di tecnologia alquanto differente). Un altro problemuccio è che il display è un po’ lento a reagire, quindi scordatevi i filmati.

Vantaggi: il kindle è leggero, e consuma pochissimo: tra un cambio di pagina e l’altro, infatti, il processore va in standby, per cui la batteria può durare diverse settimane. Lo puoi leggere a letto (la mia posizione preferita!), e molto a lungo, e puoi portartelo in giro molto facilmente. E poi costa poco (139$ senza il 3G).

Svantaggi: niente touch screen, si usa un tastierino e dei comodissimi tasti laterali per cambiare pagina. La mancanza di touch non da molto fastidio se dovete semplicemente leggere dei libri, mentre se dovete leggere documenti pdf è un altro discorso: può leggerli, ma non è comodissimo. Il pdf infatti è un formato fisso (al contrario dell’HTML che si adatta al dispositivo). Se avete dei documenti in pdf formato A4 sul piccolo schermo del kindle dovete perdere tempo a fare pan&zoom con i tasti, e dopo un po’ vi prende male. Se volete leggere pdf, compratevi l’aiped.

Il kindle legge un formato speciale chiamato mobi, e non lo standard ePub. Ci sono però diversi convertitori in rete, e la cosa non mi sembra poi molto limitativa (a parte il problema del DRM). Il mobi è praticamente equivalente a un sottoinsieme dell’html, zippato, niente di trascendentale. 

Leggere i blog

Appena mi è arrivato il kindle ho subito cominciato a smanettarci sopra. Ho scaricato libri gratuiti (per esempio su Liber Liber, progetto Manunzio, ci ho trovato “Q”, di Luther Blisset), ho comprato un paio di libri su Amazon. Dopo un po’ mi è venuta voglia di leggerci i miei blog preferiti.

Il kindle ha un browser sperimentale, ma ve lo sconsiglio. Navigare una pagina web complicata con i tastini è un’esperienza abbastanza scoraggiante. Inoltre, ogni volta che si accende il wireless, la batteria si scarica più velocemente.

Invece ho pensato che avrei potuto scaricare i feed sul mio PC, convertirli in formato mobi, e poi trasferirli sul kindle via USB. Per fare questo però, bisognerebbe interpretare le pagine html per scartare le parti non necessarie. Ad esempio, non mi interessa la sidebar, con la lista dei link, l’archivio dei post, ecc. Né mi  interessano i commenti, e vorrei saltare la pubblicità, se c’è. Insomma, mi interessa estrarre solo il contenuto del post. La cosa non è banale, perché il formato html non è  strutturato, e soprattutto non contiene alcuna informazione semantica: i tag html ci dicono come formattare il testo, ma non danno alcuna indicazione su cosa quel testo significhi.

Per cui, l’html di ogni blog è impostato in maniera leggermente differente, e la funzione di estrazione dei essere scritta ad hoc per ogni blog. Tutto questo significa un sacco di lavoro!

Niente panico. Per fortuna c’è chi ha pensato per noi (è questo il bello di Internet e dell’Open Source: c’è quasi sempre qualcuno che ci ha già pensato).

Calibre

Calibre (si dovrebbe leggere caliber) è un programma open source scritto da Kovid Goyal (kudos Kovid!) che permette di gestire una libreria di e-book e tenerla sincronizzata con l’e-reader. Per la gioia del nostro collega Juhan, è scritto in Python! E’ disponibile per Linux, Mac e Windows, supporta moltissimi e-reader e molti formati differenti. Inoltre, gestisce in maniera semplice ed efficace lo scaricamento di post e news dal web, li trasforma nel formato desiderato e trasferisce tutto sul dispositivo in maniera automatica.

Per gestire le differenze fra un sito web e l’altro, supporta il concetto di recipe (ricetta). Per ogni sito bisogna scrivere un’apposito file, detto appunto recipe, che contiene le direttive per controllare l’estrazione delle informazioni dall’html. La recipe va scritta in Python: in pratica, si tratta di una classe Python che deriva dalla classe base BasicRecipe, e che specifica gli opportuni parametri.

La distribuzione di Calibre contiene già una serie di ricette pronte all’uso: potete agilmente leggere il NY Times, l’Economist, xkcd, Dilbert, ecc. Per i siti italiani, troviamo La Repubblica, Il Corriere della Sera, Punto Informatico, Le Scienze, e altro.

Quindi, a partire da una di queste, ho scritto la mia ricetta per “Ok, panico”, eccola:

#!/usr/bin/env  python
__license__   = 'GPL v3'
__author__    = 'Giuseppe Lipari based on Gabriele Marini recipe'
__copyright__ = 'Gabriele Marini'
__description__ = 'Ok, panico'

'''

http://okpanico.wordpress.com/

'''

from calibre.web.feeds.news import BasicNewsRecipe

class OkPanico(BasicNewsRecipe):
    __author__     = 'Giuseppe Lipari'
    description    = 'Ok, panico'

    title          = u'Ok, panico '
    category       = 'Blog, programming, italian'

    language       = 'it'
    timefmt        = '[%a, %d %b, %Y]'

    oldest_article = 15
    max_articles_per_feed = 10
    use_embedded_content  = False

    remove_javascript  = False
    no_stylesheets     = True
    keep_only_tags     = [dict(name='div',attrs={'id':'content'})]
    remove_tags        = [dict(name='div',attrs={'class':'navigation'}),
                          dict(name='div',attrs={'id':'comments'}),
                          dict(name='div',attrs={'class':'pd-rating'}),
                          dict(name='div',attrs={'class':'snap_nopreview sharing robots-nocontent'}),]

    feeds              = [(u'Ok, panico',u'http://okpanico.wordpress.com/feed/')]

Se volete utilizzarla, salvate il codice con il nome “okpanico.recipe”, poi aprite Calibre, andate sul menu “News -> add a custom news source”, e poi cliccate sul pulsante “Load recipe from file” (ultimo in basso a sinistra), selezionate il file okpanico.recipe, ed il gioco è quasi fatto. A questo punto potete andare su “News -> schedule news download”, e decidere quando e come utilizzare la ricetta. E a questo punto il gioco è fatto!
Vi riporto anche la ricetta per l’altro mio blog (scacciamennule.blogspot.com):

#!/usr/bin/env  python
__license__   = 'GPL v3'
__author__    = 'Giuseppe Lipari based on Gabriele Marini recipe'
__copyright__ = 'Gabriele Marini'
__description__ = 'Scacciamennule'

'''

http://scacciamennule.blogspot.com/

'''

from calibre.web.feeds.news import BasicNewsRecipe

class Scacciamennule(BasicNewsRecipe):
    __author__     = 'Giuseppe Lipari'
    description    = 'Scacciamennule'

    title          = u'Scacciamennule '
    category       = 'Blog, italian'

    language       = 'it'
    timefmt        = '[%a, %d %b, %Y]'

    oldest_article = 7
    max_articles_per_feed = 10
    use_embedded_content  = False

    remove_javascript  = False
    no_stylesheets     = True
    keep_only_tags     = [dict(name='div',attrs={'class':'date-outer'})]
    remove_tags        = [dict(name='div',attrs={'class':'comments'})]

    feeds              = [(u'Scacciamennule',u'http://scacciamennule.blogspot.com/feeds/posts/default')]

Moltissimi blog su blogspot hanno la stessa struttura del mio, quindi potete riutilizzarlo alla grande.
Se scrivete la ricetta per il vostro blog, fatemelo sapere che magari vi vengo a leggere!

PS: unico difetto di Calibre è che è molto lento. Dear Kovid, you should work more on the performance!

unbalanced-parentheses – un affabile blog su newLISP

Confesso che mi sono innamorato di newLISP, non so a chi possa interessare ma devo farlo: un nuovo post. Dove in particolare si parla di unbalanced-parentheses, fun with newLISP di cormullion.
Chi sia cormullion è un mistero ma in fondo anche juhan non è conosciuto da tutti. A differenza di quest’ultimo cormullion va avanti da anni a dispensare saggezza; dice di non essere un programmatore ma, secondo me, ci sa fare eccome!
Come ha fatto notare recentemente in un commento il suo blog è consultabile attraverso ricerche di parole chiave. Cercando per “newLISP” si trovano chicche davvero notevoli, eccone alcune.

Reasons to learn newLISP

È facile, piccolo, veloce, versatile, differente, amichevole, ancora in fase di sviluppo, divertente e libero. Chi offre di più? E se avete un idea diteglielo, a lui o a Lutz (che attualmente preferisce il nick Don Lucio).

How LISP Became New

michael, un collaboratore di cormullion e frequente commentatore ci racconta una favola della buona notte che, secondo la prassi inizia con “C’era una volta…“. Anche per chi non si sente più leggere le favole prima di addormentarsi questa è ottima.

Syntax matters

La sintassi del Lisp è inusuale, sembra sia la ragione per cui la gente non usa il Lisp. Ma siamo sicuri che sia così? Proviamo a confrontare lo stesso script in Perl e newLISP.

On my command

Il terminale di newLISP non è il massimo. Niente a che vedere non dico con Delphi ma anche con Idle di Python. Ecco una cosa che Don Lucio o chiunque altro dotato di skill e buona volontà dovrebbe addressare. Per intanto cormullion ci prova con uno scriptino di 25 righe, funziona, improvabile migliorabile.

Vacuum-tube Lisp

Ecco una cosa che manca a newLISP: CAR, CDR e le loro combinazioni stenografiche delle origini, ovunque obiqui da IBM 704 fino a oggi. Ma se qualcuno le vuole eccole qui.

Questa è solo una veloce ricognizione del sito a volo d’uccello, c’è molto di più. Un’avvertenza, forse: sul mio ‘puter ricerche consecutive prima che sia finita la precedente bloccano il sistema; appena posso provo su altre macchine, potrebbe essere un bug ma non ne sono sicuro.

A momenti dimenticavo: il sito è tutto fatto con indovinate cosa?
! :-D

Aggiornamento, gennaio 2011: Il blog non è più raggiungibile :-(

Iscriviti

Ricevi al tuo indirizzo email tutti i nuovi post del sito.

Unisciti agli altri 37 follower