pyLisp-ng projektas yra tiesioginis palikuonis PyLisp, kuris turėjo savo atsitiktinio gimimą kaip Williamo Annis noras sukurti CLIPS-kaip sintaksė paprasta ekspertų sistema, skirta stebėjimo priemonę & nbsp rezultatas;. Kaip rezultatas Lisp palūkanų Python naujienų grupės William išleido programinę įrangą ir paskelbė jį į grupę.
Po kelerių metų, kad Evolver ir txEvolver projektai reikalingi funkcionalią programavimo kalba įgyvendinimą Python, kaip tikrinti Python AST buvo per daug vargo. Autorius norėjo platinti, procesas ir valdyti evoliucinius algoritmus / taisykles programas keliose nuotolinio susukti serverių ir manipuliuoti kombinacijomis dalinių programų buvo daug lengviau integruoti su Twisted jei pačios programos gali būti įvertintas ir introspected lengvai su Python.
pyLisp-ng paveldi PyLisp anketa išskirtiniai charaateristics. Pavyzdžiui, loginę yra teisinga ir neteisinga, ir tai nereiškia konvenciją, kad viskas yra ne klaidinga tiesa (bendras daugelio Lisps). Tiesą sakant, visi pyLisp-ng loginę remiasi fuzzy logika, todėl jūs galite daryti sudėtingiau dalykų. Makrokomandos yra gana keistai, pirmos klasės objektai PyLisp kuri gal naujų į Lisps:
Lisp> (setq rūšys 22)
22
Lisp> ((makro (X) "(setq x (+ x 1))) rūšys)
23
pyLisp-ng, kaip ir jo pirmtakas, neturi becomming visavertę, tvirtą LISP įgyvendinimą ketinimų. Viskas pažanga reglamentuoja tik prisidėti kūrėjams labui; dabar, kad yra griežtai, skirtas naudoti kaip genetinio programavimo įrankis.
Įrengimas:
pyLisp-NG setuptools draugiškas; Jūs galite įdiegti ją taip:
& Nbsp; $ easy_install pyLisp-NG
Taip pat galite gauti visą kodą iš Launchpad:
& Nbsp; $ bzr LP: pylisp-ng
Pastarasis variantas labai skatinama suinteresuotiems vartotojams, nes saugykloje yra papildomus failus, kurie nėra įtraukti į ditribution archyvų (pavyzdžiui, bandymo bėgikas ir bandymo utils).
Naudojimas:
Norėdami naudoti interpretter iš pilno kasos, atlikite šiuos veiksmus:
& Nbsp; $ cd
Jei įdiegėte su easy_install, ir jūsų Python skriptus katalogas yra jūsų kelyje, viskas, ką jums reikia padaryti, tai:
& Nbsp; $ pylisp-ng
Šiuo metu, jūs galėsite įvesti Lisp išraiška:
Seplenienie> ((lambda (x) (* x x)) 2)
4
Lisp>
Galite naudoti S-išraiška kodą iš Python:
>>> Iš pylispng importo LISP
>>> L = lisp.SExpression ('((lambda (x) (* xx)) 2) ")
>>> G (L)
'((Lambda (x) (* x x)) 2)'
>>> L.eval ()
4
Statybos ekspresijos vieną simbolį vienu metu arba pridedant gabaliukus metu:
>>> L = lisp.SExpression ()
>>> L.append ("+")
>>> l.append ('3')
>>> l.append ('5')
>>> L.append ((* 3 3) ")
>>> G (L)
"(+ 3 5 (* 3 3))"
Galite išnagrinėti įvairias savybes s-išraiška:
>>> L.eval ()
17
>>> L.getDepth ()
2
>>> LEN (L)
4
>>> L.getSize ()
2 dalis
Įranga .
- maža Lisp tarmė, lengva integruoti į kitus Python projektus;
- Apima interaktyvų LISP vertėją.
- išraiška savistaba, specialiai sukurtas naudoti genetinio programavimo.
Kas naujo , šioje laidoje.
- Pridėta savistaba kodas, kuris yra naudinga genetinės programavimo
- pora mažų klaidų ir kai kodas valymas.
Reikalavimai
- Python,
Komentarai nerastas