Привет, анон.Хочу вкатиться в программирование. Читаю Programmng in Scala, не могу понять, почему для val x = Array(1,2,3)x(1) это apply, а x(1) = 42 это update. Как так?
>>139066736 (OP)Тебе рано читать программинг ин скала.
>>139066763Может рано, а может в самый раз.
>>139066781Нет, рано. Если хочется именно скалу, то functional programming principles in scala на курсере. Но вообще - это один из худших языков для старта. Хуже только спп. Ты зря теряешь время и выставляешь себя дураком. Зачем это тебе?
>>139066859Ну почему же выставляю дураком. Что-то не знать - это нормально. В этом смысле все в достаточно большой степени дураки.
>>139066891Что-то не знать - нормально. А задавать частные вопросы, не имея общей картины - плохой вкус. It smells.
>>139066904Обучение от частного к общему еще никто не отменял. Можно с грамматики языка начать, но почему-то большинство начинает с hello world.
>>139066967Некорректная аналогия. Я не говорил про обучение от частного к общему. Я говорил про частные вопросы и общую картину. Это примерно как спрашивать у математика, почему у него именно икс в уравнении, и почему икс именно крестиком, а не закругленный.
>>139067028А это у нас сегодня корректная аналогия, очень хорошо. Ладно, начнем с простого, на Скале пишешь что-нибудь?
>>139067094Да, корректная.Ради соблюдения приличий:http://www.scala-lang.org/api/2.6.0/scala/Array.html> Note the indexing syntax xs(i) = x is a shorthand for xs.update(i, x). > Note the indexing syntax xs(i) is a shorthand for xs.apply(i). Ну, то есть ответ на твой вопрос - "потому что я вот так, крестиком пишу". И ты, кстати, и сам бы мог это прочитать - это ведь в документации написано, черным по белому. Но тебе не хватает контекста. Скала - сложный язык, который разрабатывался для вполне конкретных целей. Обучение разработке не входит в их число. Есть sicp, есть htdp. Будь эффективным, не трать время зря.
>>139067165Разумеется, мог. Возможно даже первая ссылка была бы не на эту отписку в javadoc, а на so, где бывают более развернутые тексты. То есть это некий еще более специальный синтаксический сахар, чем остальные оператор-функции. Забавно, спасибо.
нихуясе вы тут бейсиком ебошите) зачитаешьси
>>139067262Ну, тут вроде развернутый текст писать не о чем. Синтаксис как синтаксис. Мне обидно, кстати, что ты все-таки проигнорировал мой совет - ну ведь htdp и вправду лучше для этой цели! Может у тебя, конечно, есть какие-то дополнительные констрейнты, но я-то о них не знаю, так что... ладно, не так уж это и важно. Пойду спать, доброй ночи.
>>139066736 (OP)Знаком с программированием только по говнокурсу джавакрипта, НОx(1) это вроде объявление, а x(1) = 42 это присвоениеНо я дурак и суюсь туда, чего не понимаю.
>>139067329ну хоть jне tapl c rwh, и на том спасибо. спокойной ночи.
>>139067353Так это совсем другого класса и предназначения книжка - вновь некорректная аналогия! Ладно, ладно, съебываю.
>>139067343Здесь обсуждается язык с другой семантикой.
Ананасы, какой язык выбрать для неспешного самообучения? Хочу, чтобы учился полгода-год и можно было устраиваться макакой на 10к+/неделя. В школе знал паскаль, с тех пор прошло 5 лет и к программированию не притрагивался.
>>139067434да вот же, Скала, отличный язык. Правда не всем подходит.
>>139067434Очевидный лисп. Потом на джаву, потом на скалу сядешь
>>139067434Стеки и предметные области надо учить, а не языки.
а вообще лучше написать свою грамматику языка на yacc или bison, потом все языки одинаковыми казаться будут
>>139067473Это что вообще? Можешь чуть подробнее? С телефона неудобно сейчас гуглить.>>139067469Почему надо переходить на какой-то другой потом?Алсо, почему не популярные кресты?>>139067449А для чего подходит?
>>139067494Грамматика - это только синтаксис.
Я так учился: написал мини-ос по книге таненнбауэма, написал небольшой лексер и компилятор по книге с драконами, написал псевдовиртуалку на джаве по книге создателя антлера, выучил похапэ+хтмл+джс, запилил демо-проект, устроился на завод, теперь я веб-макака с 15к нахуй
Еще процессор надо было собрать по харрису, тогда был бы фрилансером за 300к.
>>139067669вот, где я просчитался, черт. срочно иду делать. скоро в тайланде на фрилансе буду с трапами няшиться под хвост
>>139066859Я в погромирование вообще с изучения ассемблера вкатывался.
изучать программирование надо с си, чтобы было понимание, как оно все работает в более высокоуровневых языках
>>139067825а почему именно с си, может надо с register- transfer level
>>139067825mov eax, '3'sub eax, '0'mov ebx, '4'sub ebx, '0'add eax, ebxadd eax, '0'
>>139067954Почему ввод не на прерываниях, а в исходном коде? Лах, сасай, мамку ебал твою.
>>139068273Просто обоссал тебя, дауненок.
>>139068273А да и срал в ротеш твоей матери.
>>139068273И мамашу ты только свою выебал, гавношкольник хуев.
>>139066736 (OP)ОП, ты случайно не из екб?
>>139067611А если бы учил что-то одно, пришёл бы к успеху.фронтендер джун 40к
>>139068427Нет.
>>139067370FYI, судя по парсеру, https://github.com/scala/scala/blob/2.12.x/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala#L1536разбирает x(i)=42 в Apply(x,i) и 42, а потом перепаковывает в update чем-то такимhttps://github.com/scala/scala/blob/05016d9035ab9b1c866bd9f12fdd0491f1ea0cbb/src/reflect/scala/reflect/internal/TreeGen.scala#L508Выглядит как костыли, зато пользователи довольны.
Учите структуры данных, алгоритмы , а не синтаксис определенного языка, если хотите стать программистами, а не кодерами.
Потому что скобочки в скале перегружены по самое не могу. Перегружены в смысле как перегрузка операторов, только тут речь о синтаксисе. Подожди, скоро дойдешь до моментов где нужны двойные скобки, еще не так охуеешь.