Изследователи от Масачузетския технологичен институт (MIT) създадоха нов език за разработка на уеб сайтове. Ur/Web обединява широко използваните уеб технологии HTML, CSS и JavaScript и ще освободи програмистите от необходимостта да работят с тези езици поотделно.
Очаква се новият език да опрости и ускори процеса на разработка на уеб сайтове и да ги направи по-надеждни и сигурни. Уеб страниците ще се създават като самостоятелни, независими програми.
Ur/Web може да намери широко приложение, тъй като в много случаи намалява разходите за уеб разработки, смята създателят на езика Адам Члипала, учен от MIT. По неговите думи, новият език е по-универсален от съвременните уеб стандарти.
В момента разработчиците трябва да владеят HTML, CSS, JavaScript, PHP, SQL и други уеб технологии и езици, за да създават пълноценни уеб сайтове. Ur/Web включва в себе си всички тези езици и ги компилира в изпълним машинен код.
Тъй като кодът на Ur/Web е компилиран предварително, производителността е много по-висока в сравнение с традиционните методи за разработка на уеб сайтове, пояснява Члипала. В един от тестовете Ur/Web е показал два пъти по-висока скорост спрямо PHP, например. Езикът е оптимизиран така, че да обработва едновременно множество паралелни заявки на физически сървъри.
Освен облекчения за разработчиците Ur/Web внася някои нови механизми, които помагат за повишаване на надеждността и сигурността на сайтовете. В частност, новият език позволява изключване на възможността за взаимодействие между различните елементи на една уеб страница – код на реклама и уидгет с календар, например.
Освен това, подобно на традиционните езици за програмиране C, Pascal и Java и за разлика от езици като JavaScript, Ur/Web има строга типизация. Всички променливи се свързват с определени типове данни в самото начало, а след това тези типове не могат да се променят. Това затруднява хакването на сайтовете чрез изпращане на специално създадени команди през формите на уеб страниците.
Ur/Web също така поддържа възможност за задаване на областта на видимост на променливите. По този начин се ограничават местата, от които може да бъде извикана променливата.
Новият език има и някои недостатъци. Той изисква умения по функционално програмиране, което ще затрудни разработчиците, които са привикнали с процедурни и обектно-ориентирани езици като С и Pascal. Адам Члипала сравнява Ur/Web с функционалния език Haskell. Много програмисти считат този език за нещо неземно, но част от разработчиците го харесват заради неговите богати възможности.
@ Венелин
> …ама как ще махне CSS-а?
А и защо?!? Нали това е голямото му предимство – да е отделен…
Пешо, ти толкова си и виждал Python, ама иначе оприличаваш. То да приличаше на Python, щеше да е хубаво, ама уви – не.
По темата:
1. Смесване на съвсем различни неща на едно място е напълно грешно.
2. Как се дебъгва това нещо? Генерира ти javascript, който идея си нямаш какво прави, който се изпълнява в browser-a ти и който прави някакви заявки към сървъра, които по никакъв начин не можеш да разбереш какво са.
3. За генериране на HTML и някаква JavaScript логика ок, ама как ще махне CSS-а? Това е пълна безмислица.
И на мен не ми допада…
Много нагъчкан и неподреден ми изглежда. И тоя Python-ски синтаксис – блях…
Освен това, в примерия код си има SQL и HTML, само дето всичко е миш-маш…
Как точно комплиран език, изпълнен на сървър ще замени JS?
И за какво по дяволите е тоя then в if-a??? Излишно усложнение…
Ще ми е интересно да видя до къде ще стигне тази идея ! Все пак и аз мисля, че е много грешно да сложиш всичко на едно място.
Имам някакви спомени, че преди време пак имаше някаква такава разработка, но не знам до къде са стигнали нещата … сигурно и там нищо не се е получило.
+1 Програмист
Явно автора на въпросния език, няма никакъв опит в разработката на реални приложения. Натъпкал е всичко на едно място, което е най-най-грешното нещо.
Правил си е някакъв проект за да си оправдае MIT заплатата и субсидията за псевдо-научната разработка.
Хората не разбраха – в днешно време трябва да знаеш и учиш много неща, няма универсални решения.
Не съм съгласен с нищо от написаното, включително и с документацията от MIT.
На мен лично езикът не ми допада. Това не значи, че казвам, че не струва и че няма ад има кой да го ползва…