"Új" programozási nyelvet vezet be a Deepin disztribúció

Címkék

Unilang néven saját programozási nyelvet vezet be a Deepin kínai disztribúció. A fő felhasználási terület az OS alá írt appok lennének.

"Unilang is a general purpose programming language project proposed to adapt to more effective and flexible development of desktop environment applications."

Részletek itt.

Hozzászólások

Milyen igaz. Sokszor az az érzésem, hogy sok nyelv csak azért születik, mert a szerző nem tanul meg rendesen a meglévőkben programozni, és abban reménykedik, hogy egy új nyelv, ami az ő igényeihez és felhasználásához igazodik, majd pótolja a hiányosságokat, megoldja a problémákat, csodát tesz. Nem fogja megoldani, csak lesz egy n+1. nyelv, feltalálják újra a kereket egy másik formában, programozni meg azon is meg kell tanulni, nehézségek ott is lesznek, legfeljebb más formában jelentkeznek.

Ha jól értem, GUI-s programokat akarnak írni, gondolom még mindig Qt-n vannak Deepinék, arra tökéletes lenne a C++ is, vagy Rust, Go, vagy ami már van. Ráadásul az új nyelveket nem csak azért nem tartom jó ötletnek, mert újra kell valamit tanulni (annak, aki a projektbe be akar dolgozni), meg libeket portolni, hanem behoz egy újabb rétegnyi bizonytalanságot, bugos applikációnál annak a lehetőségét, hogy a bug, regresszió, memory leak, stb. nem is az alkalmazásban van, hanem a fordító miatt, hiszen új nyelvnél még az se olyan kiforrott.

Plusz ha valaki csak egy x alkalmazást fejleszt, akkor maradjon annál, ne akarja a nyelvekbe, compile-írásba belevetni magát, mert az egy teljesen másik terület, azzal már foglalkoznak azok a szaktekintélyek, akiknek ebben nagyobb tapasztalatuk van. Csak elveszi az x alkalmazás írásából az időt, erőforrást. Csak akkor érdemes új nyelvbe kezdeni, ha valakinek tényleg van valami forradalmi ötlete, ami egy teljesen új paradigma, amihez hasonló se volt nagyon, és emiatt nem alkalmasak hozzá a meglévő eszközök. Ilyen viszont nem gyakran van, mivel minden fel van találva, amit ilyen téren ki lehet találni egyáltalán. Elfogytak a variációk, paradigmák, tanulónyelveket sem nagyon lehet már jobban leegyszerűsíteni, stb..

Illetve még az az érzésem, hogy sok nyelvet ilyen divatdiktátorok találnak ki. Tudják ők azt nagyon jól, hogy felesleges, de mindig előállnak egy újdonsággal, amiből trendet, hájpot csinálnak, és akkor ők lesznek a menő hipszterek, hogy már ebben is előrébb járnak, míg sokan mások csak késve szálnak fel a hype-vonatra. Pl. egy C, C++ már 35-50 éves nyelvek, kit érdekel, nem izgalmas, nem menő, mindenki tanulta, unásig ismeri, van már minden platformra, telítve van vele a kínálat, munkaerőpiac, nem lehet vele már sehol kitűnni, így muszáj egy újat éltetni. Ez most a Rust, de ahogy ez is egyre tömegesebben használt lesz, elveszti a hájpértékét, átnyergelnek valami újra (pl. Nim, legújabb, n+1. BullshitScript, HotChocolateScript framework), és akkor megint mindenki abban hozhatja le a „lemaradását”, a nyelv kitalálói megint élvezik, hogy ők fújják a passzátszelet, mindenki más meg csak fáziskésésben küzdi fel magát, addig meg élvezhetik a kiváltságokat, nagyobb szükség lesz rájuk, mesterségesen keresletet generálnak, el lehet adni az új könyveket, új képzéseket, új munkaköröket lehet létrehozni, meglévő libeket, fordítókat, libeket átportolni, stb., meg el tudják magukról mondani, hogy benne vannak a körforgásban, legújabb trendekben, nem a kövek alatt élnek. Ez az egész körforgás csak értelmetlenül viszi el az extra erőforrást, nem jó senkinek alig pár vezéremberen kívül.

A computer is like air conditioning – it becomes useless when you open Windows.” (Linus Torvalds)

Ebben az is benne van egyébként, hogy külföldi egyetemeken népszerű oktatási téma a fordítók működése, fordítóíráshoz elméleti alapozás.
Fordító alatt egyébként nem csak általános nyelv, hanem valami gépezet spéci konfiguráció-nyelvezetének fordítóját is értjuk, tehát fontos téma.
Egyúttal ez szép és változatossá tehető szakdolgozat téma, akár egy általános nyelv fordítója is.
Aztán ha a jelölt beleszeret és továbbgörgeti, akkor már csak némi füstöt kell köré csapni, hogy "ez az igazi".

Vannak azért magyar egyetemek is -- pl. programozók képzésénél --, ahol a fordítóprogramok (nyelvi felismerők) elvi alapjait (pl. nyelvosztályok, automaták) működését is bemutatják, esetleg saját mini-nyelv megtervezését és implementálását is megkövetelik.

Nem haszontalan dolog -- szerintem --, mert ezzel a tapasztalattal talán könnyebb megérteni -- és elfogadni -- az újabb nyelvek struktúráit és működését.

"Share what you know. Learn what you don't."

Kiváncsi leszek, hogy van-e benne valami eredeti, vagy simán valaminek a másolata-e.

> egzotikus kormányzati OS
> egzotikus új programnyelv, amivel a kormány által szponzorált OS-re írnak appokat
> valami furcsa C++ interop izé, amit többedszeri olvasásra sem értettem meg
> not invented here / xkcd 927

poliverzum, is that you? :)

Terry Gilliam idézet: "Egy apró tényt ajánlanék mindenki figyelmébe, aki már teljesen elveszett a modern világ vég nélkül sokasodó valóságaiban. Emlékezzetek: Philip K. Dick járt ott legelőször."
Terry Gilliam: "For everyone lost in the endlessly multiplicating realities of the modern world, remember: Philip K. Dick got there first.

Az xkcd-s hivatkozas naon talalt (romma rohogtuk az arcunk, mikor friss volt); bele kellene verni minden IT szakember fejebe.

Miota C++ letezik, nem ertem, hogy az emberiseg miert gondolkodik uj programozasi nyelvekben. :)

Ha a FORTH képes volt űrtechnikában és hadászati tűzvezető rendszerben jól teljesíteni ...
Egy állatorvosi ló ez is a programozási nyelvek terén. Itt már szépen elvált a hardver és rá FORTH fordítót író mérnök munkája a tudós által sorokba öntött algoritmustól. Utóbbi ezáltal hordozható lett.

Futasidoben ugyan nehezen verheto, de fejlesztesi idoben relative konnyen. Tanulasi idoben meg plane. Miutan kb. mindent megtartott a C-bol, tudsz programozni benne nagyon low-level modon, meg egeszen magasban is. Emiatt mindenre van kb. 3 fele kulonbozo szint amit hasznalhatsz, es majdnem mindet meg kell tanulnod. Emiatt valoszinuleg a legnehezebben tanulhato nyelv. Python pont a forditottja, lassan fut, de gyorsan tanulhato, es gyorsan ossze lehet dobni benne dolgokat.

Ezert. :)

(Azt viszont en sem tudom, hogy amiota letezik Python es C++ is, minek ujabb :) )

A strange game. The only winning move is not to play. How about a nice game of chess?

Nekem nagyteljesítményű szerverek írásához nagyon-nagyon-nagyon jól jött, hogy beletették a nyelv szabványába ezeket a nagy újdonságokat.

Igazából az volt a meglepő, hogy eddig elég jól el tudtunk boldogulni nélkülük ilyen-olyan helyettesítő libek segítségével, mostantól töredék erőfeszítésbe kerül egy multiplatform kód megírása, hiszen mindenhol ugyanúgy kell működnie és kész.

(amúgy inkább ugye C++20 és C++23)

Itt van amugy a github oldala:

 

https://github.com/linuxdeepin/unilang

Sztm itt a cel foleg az volt, hogy viszonylag "kezdok" konnyen tudjanak GUI appokat irni Deepin ala. Nekem elso ranezesre olyan mint egy "API" a C/C++ folott.... (bar nem ertek hozza :))

Megnézve a unilang példát: https://github.com/linuxdeepin/unilang/blob/master/demo/qt.txt
TCL/TK esetén: http://pages.cpsc.ucalgary.ca/~saul/personal/archives/Tcl-Tk_stuff/tcl_…

Bár végülis az alábbi listában elfér ez is:
    https://en.wikipedia.org/wiki/List_of_programming_languages

Kérdés tényleg az, hogy bármi újszerű van-e benne, vagy csak N+1. variánsa a jelenlegieknek.

dinamikus típusosság és nem kötelező gc... mi baj lehet...

Azert azt is latni kell, hogy a kinaiaknak az elsodleges celjuk ezekkel nem az, hogy feltalaljak ujra a spanyolviaszt, hanem hogy kialakitsanak egy olyan okoszisztemat, ami alapvetoen toluk, nem pedig nyugati cegektol (alapitvanyoktol, egyesuletektol, alapvetoen nyugati erdekeltsegtol) fugg.

 

Ezert lett Upstream a Deepin (nem fugg a debian verzioktol, ugy alakitjak a package verziokat/osszeteteleket ahogy nekik tetszik) ezert lett a linglong package formatum (flatpak copy) ezert lett most ez a nyelv... 

 

Fura amugy a kinai foumokat olvasni pl a Deepin oldalan is. Ok a nyugati dolgokat fenyegeteskent meg fuggeskent elik meg es udvozlik ezeket a dolgokat.

Ideje lenne már valami magyar programnyelvet kitalálni, amit aztán kötelezővé lehetne tenni az iskolában és az állami munkahelyeken. Kötelezően át kellene állni az ebben írt programokra, hogy ne függjünk senkitől!

A neve legyen mondjuk: mpny. Magyar Program Nyelv.

#betölt <fidesz.mpnyk>
szám központi-funkció() {
   kiírás("Tisztelt Hölgyeim és Uraim! Helló világ!");
   visszatérés 0;
}

Ez nem C! Ez bizony mpny! :)

Voltak ilyenre kísérletek, hogy C-t meg Pascalt nagyobb nyelvekre lokalizálni, pl. spanyolra, franciára, stb., nem lett sikere. Az MS Office-ban a makrók/függvénynevek le vannak magyarítva meg más nyelvekre is lokalizálva, okoz is elég nagy fejfájást, hogy minden rendszeren eltérő.

Nem segít, hiszen a prognyelveknél nem a parancsok megjegyzése a legnagyobb munka, hanem a szintaxis, adattípusok, algoritmikus gondolkodás, esetleg libekben objektum/függvénynevek, paraméterek, stb. kezelése, fejben tartása, de erre meg ott vannak a nagy IDE-kbe meg jobb text editorba beágyazható linter, language server, stb. pluginek. Magyarul is ugyanolyan nehéz megtanulni, mint külföldiül. Sőt, még az a hátránya is megvan, hogy ilyen kiírás, visszatérés parancs annyira általános magyar szavak, hogy emiatt sokan kevésbé is jegyeznék meg, mint egy különlegesen festő/hangzó angol kulcsszót. Plusz nem unicode-kompatibilis rendszereken az ékezetekkel is szívni kéne. Van sajnos ilyen nyelv, pl. Agda, amiben matematikai meg grafikus Unicode-karakterek vannak, és szívnak is vele, hogy speciális IDE kell hozzá, hogy a sok nem sztenderd krix-krax-ot bevigyed.

Akinek erre van igénye, hogy ne legyen külföldiül, az használjon Lispet. Abban is van néhány angol kulcsszó, de átdefiniálható, és az egész csak ilyen zárójelezett függvényjelölés, így lényegében természetes nyelvektől független. Esetleg Brainfuck, de az már tényleg agyrém a nevéhez méltóan, vagy APL, J, G, stb., ezeket nem ismerem, de nem angol kulcsszavakon alapulnak, de nem véletlen nem népszerűek ezek. Esetleg elméleti prog oktatásban szokták engedni papíron a saját metanyelv használatát, aztán rajzolhatod vagy ágrajzzal, vagy amivel akarod, HA, CIKLUS, mit tudom én, AKKOR tömb, változó, függvény, stb., kitalálhatsz saját szintaxist, csak konzekvens, érthető legyen.

C-ben van talán 33 kulcsszó, igazából 32 + a main(). Ennyit bárki fel tud írni, kiragasztani egy cetlire, vagy az IDE is felismeri, átszínezi ezeket, mikor írod be. Aki ennyit nem tud kezelni, megjegyezni, ne programozzon.

A computer is like air conditioning – it becomes useless when you open Windows.” (Linus Torvalds)

Pont tökéletes az angol. Minimalista latin ABC, jól tanulható nyelv (még ha az angoltanárom b@szta már rám az ajtót :D), de a szakmai része azért elég könnyű.

Nekem is az okoz nagyobb nehézséget, mikor angol leírás szerint bóklászok egy magyarított menürendszerben :)

set.backdoor(chinesecommunistparty)=true