
?
09.02.2017
14:55:14
http://github.com/typelevel/scala/blob/typelevel-readme/notes/2.12.1.md

Daniel
09.02.2017
14:56:11

?
09.02.2017
14:56:27
хм

Daniel
09.02.2017
14:57:19
надо наверное в тему группы добавить линки на основные рассылки новостей

Google

Bulbu
09.02.2017
15:35:12
Гайз, заревьювте на конкаренси ишьюс, плиз ?:
`
class CircularSet[T] {
private var set = Set.empty[T]
def add(elem: T): Unit = {
set += elem
}
def remove(elem: T): Unit = {
set -= elem
}
def iterator: Iterator[T] = {
Iterator.continually(set).flatten
}
}`

Dmitry
09.02.2017
15:36:13
wooow

Oleksandr
09.02.2017
15:36:37
//a.scala
sealed trait A
trait B extends A
// c.scala
trait C extends B
почему такое можно делать?

KrivdaTheTriewe
09.02.2017
15:36:46

Bulbu
09.02.2017
15:37:34
я же поставил смайлик

KrivdaTheTriewe
09.02.2017
15:37:39

Bulbu
09.02.2017
15:38:44

Nikolay
09.02.2017
15:40:49
а почему сет?

Bulbu
09.02.2017
15:43:00
Да, лучше какой-то immutable SortedSet

Oleksandr
09.02.2017
15:44:21

Oleg
09.02.2017
15:44:48

Oleksandr
09.02.2017
15:45:51

Google

Oleg
09.02.2017
15:45:58
Да, и это нормально

Oleksandr
09.02.2017
15:46:14
а ты наивно ожидаешь, что контролируешь всех наследников А

Oleg
09.02.2017
15:46:24
если у тебя имплементации B только в этом же исходнике, сделай и её sealed, если нет - то откуда вообще возьмутся имплементации B?

Oleksandr
09.02.2017
15:47:02
это да, но много где просто case class, без sealed

Oleg
09.02.2017
15:47:41
sealed гарантирует, что ты предусмотрел ближайших потомков в том же исходнике. non-sealed один из них означает путь, оставленный тобой намеренно
и все так делают

Oleksandr
09.02.2017
15:48:19
вот не все /=

Oleg
09.02.2017
15:48:22
а если кто не делает - он сам факапнулся
ссы ему в ротешник, говори ADT не закрыл, лох
вот сделают тебе enum {case }, будет всё хорошо у всех

KrivdaTheTriewe
09.02.2017
15:49:51
А потом появятся статьи про наследование енумов если очень хочется

Nikolay
09.02.2017
15:50:41

Oleksandr
09.02.2017
15:50:47
вон в котлине кейс классы всегда файнал
одно из немногих его улучшений

Oleg
09.02.2017
15:51:40

Oleksandr
09.02.2017
15:51:59

Oleg
09.02.2017
15:52:36
щас посмотрим
а как sealed trait в котлине сделать?

Oleksandr
09.02.2017
15:55:03
sealed ...

Google

Oleksandr
09.02.2017
15:55:20
как ни странно)
синтаксис слегка другой, правда, надо внутри обозначенного sealed писать наследников

Oleg
09.02.2017
15:56:52
лал, sealed interface не разрешён
как в котлине ковариантность?
out?

Oleksandr
09.02.2017
15:59:20
in / out, но как-то совсем необычно

Alex
09.02.2017
16:11:01

Oleg
09.02.2017
16:20:03
sealed ...
я так понимаю, GADT они не поддерживают, к примеру такая конструкция не переводима
import scala.concurrent.Future
sealed trait QuickFuture[+T]
final case class JustFuture[+T](f: Future[T]) extends QuickFuture[T]
final case class QuickValue[+T](x: T) extends QuickFuture[T]
final case class QuickError(ex: Throwable) extends QuickFuture[Nothing]
final case class ZipFuture[A, B](x: QuickFuture[A], y: QuickFuture[B]) extends QuickFuture[(A, B)]
case object QuickDone extends QuickFuture[Unit]

Sergey
09.02.2017
16:31:29

Nick
09.02.2017
16:36:44
На акке

Diemust
09.02.2017
16:39:22
в целом шедулеры все на этом revolverScheduler, можно и больше 60к. Вроде были даже перформанс тесты

Oleksandr
09.02.2017
16:39:46

Sergey
09.02.2017
16:40:01
Я тоже боялся что они проседать будут но нет, тянет
Но строить логику на Одноразовых мне кажется не самая оптимальная идея

Wystan
09.02.2017
18:32:43
А что такое gadt, только сегодгя читал скала реддит а там это и аффинные типы и все такое умное.

Alex
09.02.2017
18:34:53
gadt это adt в котором каждое слагаемое может быть специализировано под отдельный тип
например http://thedeemon.livejournal.com/51630.html

Nikolay
09.02.2017
22:53:35
https://blog.jetbrains.com/idea/2017/02/intellij-idea-2017-1-eap-extends-debugger-with-async-stacktraces/

Admin
ERROR: S client not available

Oleg
10.02.2017
05:55:55

Google

Oleg
10.02.2017
05:59:10
А на подкастах не было ещё представителей Jetbrains?

Daniel
10.02.2017
06:09:20
не было
идея хорошая

Wystan
10.02.2017
06:20:36

Nick
10.02.2017
06:42:41

Юрий
10.02.2017
06:43:42
где-то слышал, что там команда больше 10 человек делает плагин
больше, чем вся команда разработки компилятора скалы

Nick
10.02.2017
06:43:57
Хахаха
Нет, эт не так.

Oleg
10.02.2017
06:49:49
приятно послушать аргументированную беседу

Юрий
10.02.2017
06:51:41

Nick
10.02.2017
06:53:49
https://github.com/JetBrains/intellij-scala
Отсюда
В жб на самом деле задачи конкретно не привязываются. Поэтому задачи могут брать чуть ли не все

Oleg
10.02.2017
06:58:14

Юрий
10.02.2017
06:58:17

Nick
10.02.2017
06:58:39
Их много, но не на постоянке и там не все с jb

Юрий
10.02.2017
06:59:41
https://blog.jetbrains.com/scala/2016/04/21/how-to-contribute-to-intellij-scala-plugin/
> there are currently 10 people in the Scala team at JetBrains working on the project full-time.

Nick
10.02.2017
07:01:37

Юрий
10.02.2017
07:02:33
это текст из блога компании. Наверное, он более менее похож на реальность.

Google

Oleg
10.02.2017
07:02:43
Разработчики подставные, текст рекламный, плагин умирает, жидовские агенты повсюду

Юрий
10.02.2017
07:02:55
ну и графики на гитхабе тоже говорят о примерно такой же ситуации
там же не обязательно все 10 - разрабы

Dmitry
10.02.2017
07:03:18
Происки котлина

Nick
10.02.2017
07:03:48
Происки котлина
Не поверишь,но да. Мне говорил чувак из компании,что там скалку не сильно любят