Если человек покупает книгу по Scala, он уже точно знает, что ему нужна именно Scala. Scala недостаточно популярна, чтобы можно было лицезреть в форумах темы "посоветуйте книгу по Scala", это актуально для мейнстримных разрекламированных языков. У Scala же есть очень кратенькие введения и обучалки, спеки и вот эта книга. Нет чего-то вроде OCaml tutorial. По крайней мере, я не нашёл.
Ещё там на каждой странице мои имя/фамилия. Если действительно надо - можно купить, благо никаких некошерных вебманей иметь не надо, достаточно визы интернет, которую сделают в любом банке.
Не так всё. Просто простым кодерам нафиг эта scala не сдалась, будь книга бесплатной или нет - всё равно. А кому действительно надо - тот купит. Возрастной порог такскать.
Язык, в которм XML его часть, не нужен. Идиотизм какой-то, зачем его было делать частью языка я даже представить не могу. А если завтра что-нибудь другое прийдет на смену XML, тогда что?
Имхо, скала промышленный язык а не академический. Будет похож на С++ — куча фич, полностью которые понимают только гуру, а простые смертные пишут по-простому и всё. Сейчас нужно только ждать хороших библиотек, которые таки должны появиться.
Потому что очень удобно. Потому что XML, нравится это кому то или нет, является промышленным стандартом. И ему на смену ничего другого не придёт, это просто не нужно.
> Потому что очень удобно. Потому что XML, нравится это кому то или нет, является промышленным стандартом. И ему на смену ничего другого не придёт, это просто не нужно.
За каким членом его делать _частью_ языка? Это глупость редкостная. Давайте тогда еще чего-нибудь добавим, сеть, SQL, работа с файлами, да и вообще, за каким хреном нам библиотеки и фреймворки, давайте все в язык добавим, делов-то, это ж удобно!
За тем же, зачем делают строки и массивы частью языка. Потому что это удобно. Можно делать и в виде библиотеки, но чаще их встраивают. Мартин решил, что XML не менее фундаментален в современном мире, чем строки. В определённых отраслях это вполне оправдывает себя.
Приведи пример, как можно по-другому сделать pattern matching по XML-ю, без его встраивания в язык.
> SQL
Могу ошибаться, но в C#-е что-то подобное есть. LINQ что ли.
> давайте все в язык добавим, делов-то, это ж удобно!
Вообще не совсем понимаю смысл этого спора. Суть в том, что XML-литералы есть часть языка. Это влияет на лексический анализатор, и даёт вкусную возможность паттерн-матчинга по XML-ю. В D, например, есть комплексные числа как часть синтаксиса. Будете вы писать не <root><child>bla</child></root> а xmlElement('root', xmlElement('child', xmlText('bla'))), по-сути то же самое, а букв сильно больше. Я не вижу, в чём беда. Единственная проблема — возможно, сложный лексер. Это проблема разработчика компилятора и разработчиков инструментальных средств, для программиста-пользователя это не проблема вообще.
Если он тебе даром не нужен, значит в твоём коде его не будет, значит в твоём языке [который есть подмножество языка, на котором ты пишешь] его не будет. Все довольны. Ты даже можешь его не учить.
В смысле? Там на Западе продажей книг профессура имхо и зарабатывает, разве не так? Или ты хочешь коробочный компилятор Scala XP VistaTeam Edition за $500 покупать? Так со времен Watcom-а платные компиляторы уже имхо никому не нужны, невостребованы. Тем более книжка по $60 это копейки для тамошних
Кстати, книжка откровенно пишется "для тупых™", потому что знающие программирование понимают и без книжки как программировать. А книжка в расчете на слой выросших на "PHP и MySQL за три дня перед устройством на работу"
Я говорил про строку.
А список и массив, вообще говоря, ни разу не фундаментальные структуры данных. Пример на C:
int *items = (int*) malloc(sizeof(int) * 10);
for (int i = 0; i < 10; ++i) {
*(items + i) = 1;
}
Здесь используется только указатели и арифметика указателей.
В языке без арифметики указателей, конечно, массив должен быть фундаментальным типом.
На список приводить не буду, и так понятно.
Если что, для меня фундаментальная структура данных — та, которая не выражается через другие.
>Идиотизм какой-то, зачем его было делать частью языка я даже представить не могу. А если завтра что-нибудь другое прийдет на смену XML, тогда что?
Ты просто дуб. Они напишут еще одну библиотеку и сделают это "что-нибудь другое" частью языка. Если ты не понял, то XML в Scala это не часть языка. Если ты таких простых вещей не в состоянии понять, то лучше занимайся чем-нибудь несложным, например води трамвай, работай кондуктором, приноси хоть какую-то пользу, а не сиди сиднем
>Кстати, книжка откровенно пишется "для тупых™", потому что знающие программирование понимают и без книжки как программировать. А книжка в расчете на слой выросших на "PHP и MySQL за три дня перед устройством на работу"
Разумеется, настоящие программисты, те, которые знающие, рождаются в позе лямбды, и, завязав себе пуповину, бегут осваивать Хаскелл по правилам Бэкуса-Наура.
>За каким членом его делать _частью_ языка? Это глупость редкостная. Давайте тогда еще чего-нибудь добавим, сеть, SQL, работа с файлами, да и вообще, за каким хреном нам библиотеки и фреймворки, давайте все в язык добавим, делов-то, это ж удобно!
Разжевываю: "Using scala.xml feels somewhere between using some DOM API and having an XML specific language. Besides the literal syntax, there is actually no language support. In Scala, most "features" are realized not as language extensions but as libraries. Even the literal XML syntax is desugared into code that constructs objects -- so it is possible to do express everything that can be expressed in XML literals (and even more) without actually using XML syntax, programmatically."
"В Scala не встроен никакой XML. Просто с помощью библиотеки scala.xml можно использовать XML _как будто это часть языка_"