Показать сообщение отдельно
  #5 (permalink)  
Старый 18.09.2014, 17:58
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Сообщение от Safort Посмотреть сообщение
kobezzza,
ну и как? Насколько [не]доволен новыми возможностями?
В целом доволен. Раздражает медлительность внедрения фич. Также некоторые фичи сделаны неверно на мой взгляд, например строки шаблоны выглядят недоработанными, т.к. не декларативного способа вырезать переходы строк и начальные пробелы.

***

Потом сомнительна фича shorthand properties:

var a = 1,
     b = 2;

var c = {a, b};


Гораздо лучше, чтобы данный синтаксис отдали под литерал для Set:

var c = {a, b} // new Set(['a', 'b'])


Т.к. очень часто приходится писать такое:

var c = {
    foo1: true,
    foo2: true,
    foo3: true
};


И это правда раздражает.

Вообще нужно больше литералов:

{a: 1} // Object
[1] // Array
int32[1] // Int32Array
{a, b} // Set
{{a: 1, b: 2}} // Map


Литералы регулярных выражений нужно дорабатывать! Обязательно нужна поддержка разбиения на строки и комментариев

var pattern = ///
  ^\(?(\d{3})\)? # Capture area code, ignore optional parens
  [-\s]?(\d{3})   # Capture prefix, ignore optional dash or space
  -?(\d{4})        # Capture line-number, ignore optional dash
///



***

Мне не нравится подход к рефлексии через объект Proxy, почему нельзя было сделать это на основе Symbol?

var a = {
    @@noSuchMethod() {
        ...
    }

    @@delete() {
        ...
    }
};


Тем более такой подход используется в ES6, так почему бы его не сделать для рефлексии также.

***

Нужно больше встроенных коллекций, кто сказал, что в JS они не нужны? Вообще стандартная библиотека в JS на редкость убогая.

Также необходима хорошая доработка для API коллекций: во первых его нужно сделать универсальным на столько, на сколько это возможно и добавить больше методов.

***

Нужна нормальная опциональная декларация типов, хватит костылись с jsDoc.

***

Нужны нормальные потоки на уровне языка и не нужно рассказывать, что JS однопоточный. Потоки нужны, без них современный язык выглядит кастратом.


***

Нужна поддержка асинхронного программирования на уровне синтаксиса (промисы - это хорошо, но этого мало):

async () {
    var result = await $.getJSON(url);
}


Ну т.е. как сейчас делают на генераторах, но более продвинуто.

***

Нужна возможность нормальной трансляции JS в байткод и загрузки уже его, а не исходного текста.

***

Т.к. JS можно считать веб-ориентированном языком, то нужна поддержка шаблонов на уровне синтаксиса


var a = { ... };

function foo() {
    ...
}

template bar() {
    < h1
        Hello World!
}



***

Нужна универсальная обёртка для запросов к БД, аля Linq

....

Много чего нужно
__________________
kobezzza
code monkey
Ответить с цитированием