Как стать автором
Обновить

Комментарии 51

JetBrains красавцы, супер. Пошел смотреть.
Да, действительно класно выглядит, но нашел багу

не работает выделени по словам ctrl + shiwt + arrow right / arrow left.

Win 7, Chrome
Как на маке вызвать автодополнение? Cmd+Space переключает раскладку, Ctrl+Space ничего не дает.
Авто дополнение пока не сильно помогает.
НЛО прилетело и опубликовало эту надпись здесь
Ctrl+Space работает и на Маке. Только что проверено в Safari, Firefox и Chrome. А что за браузер?
Проверьте, что вы переключились с «No highlighting» на Server или Client.
Переключился. Теперь при нажатии все виснет. Видимо, это значит, что все идет так, как должно.
Переключились в какой режим?
Виснет что? Браузер? Редактор?
Какой браузер?
Переключился в клиента, дал разрешение на выполнение жабы, виснет редактор. Хром, вроде последний.
Может, просто долго грузит апплет? Он довольно большой пока
Стыдно за решение второй(
pastebin.com/L8g2X6FB
Тоже правильное!
Правильное решение!
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Баг, спасибо. Сгенерированный байткод пытается выполнить unboxing значения, которое вернул put. Которое, что неудивительно, null. Вывод — HashMap для не работает для типов значений, которые приводятся к java primitives
НЛО прилетело и опубликовало эту надпись здесь
По той же причине. Кривые руки делают ненужный unbox. Вот что генерируется в вашем случае:
    NEW java/util/TreeMap
    DUP
    INVOKESPECIAL java/util/TreeMap.<init> ()V
    ASTORE 1
    ALOAD 1
    ICONST_0
    INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer;
    INVOKEVIRTUAL java/util/TreeMap.get (Ljava/lang/Object;)Ljava/lang/Object;
    CHECKCAST java/lang/Number
/* Проблема здесь */ INVOKEVIRTUAL java/lang/Number.intValue ()I
    INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer;
    ASTORE 2
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Спасибо за решение! Но, к сожалению, неправильно декодируется число MDCCCCLXXXXVIIII (1999)
Спасибо (пофиксил pastebin.com/xjxxj2AC)
мда, поспешил — протупил
Вообще-то, с XIX века 1999 — это MCMXCIX…
Спасибо за решение! Но, к сожалению, неправильно обработана пустая строка.
Спасибо

А почему бы вам не скооперироваться с каким нибудь ресурсом типа codeforces.ru? — получили бы бОльший фидбэк ;)

P.S. решение пофиксил pastebin.com/dFZn4cBz
По-моему, упал сервер :(
Очень здорово!

Вначале хотел спросить, зачем System.out?.println вызывается через safe-call, если out вроде как не может быть null, но поигравшись с компилятором понял, почему так. Тогда вопрос другой, а вообще есть ли возможность для референс типов вызывать методы по старому, без safe-call (настройки компилятора, или что-то в этом духе)? Есть ощущение, что далеко не всегда это необходимо, а код вопросы могут засорить основательно.
Тоже это настораживает. Если компилятору нужны эти вопросы и нет возможности отключить эти проверки, то пусть автодополнение само их ставит. Например, пишу «System.out», ставлю точку получаю «System.out?.» в этот момент я просто подумаю «ага может быть null, ну да ладно».
Эх, опять haxe клонируют. Поздно правда. :)
haxe теперь поддерживает компиляцию во flash, ios, android, c++, c#, java (скоро), javascript.
Но раз от jetbrains, то вещь однозначная сильная. Как я понимаю скоро будет десктопная версия. Жаль только платная.
Обещали компилер бесплатно.
И плагины для идеи и клипца.
Радует. Но все равно мой выбор пока за haxe.
Всё-таки — «Kotlin»?
Не хватает split… Лень писать.
Первая задача: gist.github.com/1596794 Угадывание синтаксиса и API по неформальной документации — то ещё удовольствие, я вам скажу…

А почему String не совпадает с java.lang.String хотя бы по методам и приходится его так уродливо кастить?
НЛО прилетело и опубликовало эту надпись здесь
Спасибо за участие и за баги!
В первой задаче неправильно обрабатывается строка «1».
А вторая решена правильно. Поздравляем!
Возможность итерироваться появится если добавить в свой код следующий кусок:
class StringIterator(val s : String){
  inline fun next() = if (i < s.length) s[i++] else throw NoSuchElementException()
  inline fun hasNext() = i < s.length
  private var i = 0
}
 
inline fun String.iterator() = StringIterator(this)
спасибо. Было бы очень здорово, если бы это было отражено в доке… А то сходу непонятно
В доке написано что по стрингу можно итерироваться, но пока не работает(соответствующий баг есть)
Слегка поправил вторую: pastebin.com/shsJvSW7
Зарегистрируйтесь на Хабре, чтобы оставить комментарий