Google avaldab loogilise programmeerimiskeele Logica

Google on tutvustanud Logica't, uut deklaratiivset loogilist programmeerimiskeelt, mis on loodud andmete manipuleerimiseks ja mis tĂ”lgib programme SQL-keeleks. Uus keel on suunatud neile, kes soovivad andmebaasipĂ€ringute kirjutamisel kasutada loogilise programmeerimise sĂŒntaksit. Praegu saab saadud SQL-koodi kĂ€ivitada Google BigQuerys vĂ”i PostgreSQL-i ja SQLite'i andmebaasides, kuigi nende tugi on praegu katsejĂ€rgus. Tulevikus on plaanis lisada rohkem SQL-dialekte. Projekti kood on kirjutatud Pythonis ja avaldatud Apache 2.0 litsentsi all.

Logica tugineb Yedalogile, mis on teine ​​Google'is vĂ€lja töötatud andmetöötluskeel, ning pakub abstraktsioonitaset, mis pole natiivses SQL-is saadaval. Logica pĂ€ringud programmeeritakse loogiliste lausete kogumina. Toetatud on moodulid, imporditoimingud ja vĂ”imalus kasutada Logicat Jupyter Notebooki interaktiivse kesta sees. NĂ€iteks 2020. aasta uudistes enimmainitud inimeste kokkuvĂ”tte genereerimiseks saate GDELT andmebaasile juurdepÀÀsuks kasutada jĂ€rgmist Logica programmi: @OrderBy(Mentions, "mentions desc"); @Limit(Mentions, 10); Mentions(person:, mentions? += 1) distinct :- gdelt-bq.gdeltv2.gkg(persons:, date:), Substr(ToString(date), 0, 4) == "2020", the_persons == Split(persons, ";"), person in the_persons; $ logica mentions.l run Mentions +—————-+—————-+ | person | mainimiste_arv | +—————-+—————-+ | Donald Trump | 3077130 | | Los Angeles | 1078412 | | Joe Biden | 1054827 | | George Floyd | 872919 | | Boris Johnson | 674786 | | Barack Obama | 438181 | | Vladimir Putin | 410587 | | Bernie Sanders | 387383 | | Andrew Cuomo | 345462 | | Las Vegas | 325487 | +—————-+—————-+

Keeruliste SQL-pĂ€ringute kirjutamine nĂ”uab tĂŒlikate mitmerealiste ahelate kirjutamist, millest on raske aru saada, mis takistavad pĂ€ringuosade taaskasutamist ja raskendavad hooldust. Vaateid ja funktsioone saab SQL-is kasutada tĂŒĂŒpiliste korduvate arvutuste jaoks, kuid need ei toeta imporditoiminguid ja neil puudub kĂ”rgetasemeliste keelte paindlikkus (nĂ€iteks ei saa funktsiooni funktsiooni sees edastada). Logica vĂ”imaldab teil koostada programme vĂ€ikestest, arusaadavatest ja korduvkasutatavatest loogilistest plokkidest, mida saab testida, seostada kindlate nimedega ja grupeerida pakettidesse, mis on saadaval ka teistes projektides kasutamiseks.

Allikas: opennet.ru

Ostke DDoS-kaitsega saitide jaoks usaldusvÀÀrne hostimine, VPS VDS-serverid đŸ”„ Osta usaldusvÀÀrne veebimajutus DDoS-kaitsega, VPS VDS serverid | ProHoster