Size: a a a

Programming Offtop

2020 October 02

AN

Alexander Nozik in Programming Offtop
central hardware
Автопилот на с++ undefined behaviour - смерть
Вы будете удивлены, но оно таки быват. Не знаю, как на автопилотах, а вот на промышленном оборудовании постоянно
источник

AK

Anton Korotkikh in Programming Offtop
Dmitry Ponyatov
а Erlang с биндингами TensorFlow не потащит?
у него вроде сборка мусора по процессам была — отработал кадр, сдох, освободил пул кучи
возможно, вопрос качества биндингов, насколько я помню эрланг применяют иногда для реалтайма, но вопрос насколько критичного. плюс надо учитывать, что у эрланга всё хорошо с ио, а в остальном он по перфомансу примерно как скриптуха (причём не такая быстрая как луа или жс), судя по бенчам различным.
источник

AN

Alexander Nozik in Programming Offtop
Да и не на промышленном. Я регулярно вижу sigsegv на кассовых аппаратах
источник

SE

Sobolev Erik in Programming Offtop
Прикольный котяра
источник

SE

Sobolev Erik in Programming Offtop
Привет. Хотел задать вопрос о Дженериках в Kotlin. Вопрос в голове повис со вчерашнего дня. Но только я стал придавать ему формальную текстовую форму, чтобы вы поняли о чем я, как решение пришло само =)).  СИЛА КОЛЛЕКТИВА и формализации!!!=))
источник

AN

Alexander Nozik in Programming Offtop
Sobolev Erik
Привет. Хотел задать вопрос о Дженериках в Kotlin. Вопрос в голове повис со вчерашнего дня. Но только я стал придавать ему формальную текстовую форму, чтобы вы поняли о чем я, как решение пришло само =)).  СИЛА КОЛЛЕКТИВА и формализации!!!=))
А можно вопрос? И не лучше ли в @kotlin_lang, если он прям по языку
источник

SE

Sobolev Erik in Programming Offtop
не. Это оффтоп явный. Вопрос вот какой был:Ребята, всем привет. Есть сложность с пониманием одного свойства в дженериках:
Мы можем определить интерфейс

interface Retailer<T>{
   fun sell():T
}

И на его основе создать класс

class FishRetailer:Retailer<Fish> {
   override fun sell(): Fish {
       println("Sell fish");
       return Fish("");
   }
}

Все будет работать.
Но если сделать вот так:

class FishRetailer<Fish>:Retailer<Fish> {
   override fun sell(): Fish {
       println("Sell fish");
       return Fish("");
   }
}

То все ломается.
Выдается вот такая ошибка:  Type mismatch: inferred type is Generics.Fish but Fish#1 (type parameter of Generics.FishRetailer) was expected.
Объясните пожалуйста чайнику, почему классу тут нельзя передать Дженерик. Я не понимаю, почему тут не работает и почему выдает ошибку несоответствия типов, когда я использую один дженерик
источник

DP

Dmitry Ponyatov in Programming Offtop
Alexander Nozik
Да и не на промышленном. Я регулярно вижу sigsegv на кассовых аппаратах
вот кстати да, на торговом оборудовании HighAavail важно, SoftRT, массовый рынок, простые данные в коротких пакетах — самое место для Elixir
источник

AN

Alexander Nozik in Programming Offtop
Sobolev Erik
не. Это оффтоп явный. Вопрос вот какой был:Ребята, всем привет. Есть сложность с пониманием одного свойства в дженериках:
Мы можем определить интерфейс

interface Retailer<T>{
   fun sell():T
}

И на его основе создать класс

class FishRetailer:Retailer<Fish> {
   override fun sell(): Fish {
       println("Sell fish");
       return Fish("");
   }
}

Все будет работать.
Но если сделать вот так:

class FishRetailer<Fish>:Retailer<Fish> {
   override fun sell(): Fish {
       println("Sell fish");
       return Fish("");
   }
}

То все ломается.
Выдается вот такая ошибка:  Type mismatch: inferred type is Generics.Fish but Fish#1 (type parameter of Generics.FishRetailer) was expected.
Объясните пожалуйста чайнику, почему классу тут нельзя передать Дженерик. Я не понимаю, почему тут не работает и почему выдает ошибку несоответствия типов, когда я использую один дженерик
Это не офтоп, это явно по теме @kotlin_lang или даже @kotlin_start.
источник

SE

Sobolev Erik in Programming Offtop
Alexander Nozik
Это не офтоп, это явно по теме @kotlin_lang или даже @kotlin_start.
оффтоп - мое первое сообщение =))
источник

AN

Alexander Nozik in Programming Offtop
Sobolev Erik
не. Это оффтоп явный. Вопрос вот какой был:Ребята, всем привет. Есть сложность с пониманием одного свойства в дженериках:
Мы можем определить интерфейс

interface Retailer<T>{
   fun sell():T
}

И на его основе создать класс

class FishRetailer:Retailer<Fish> {
   override fun sell(): Fish {
       println("Sell fish");
       return Fish("");
   }
}

Все будет работать.
Но если сделать вот так:

class FishRetailer<Fish>:Retailer<Fish> {
   override fun sell(): Fish {
       println("Sell fish");
       return Fish("");
   }
}

То все ломается.
Выдается вот такая ошибка:  Type mismatch: inferred type is Generics.Fish but Fish#1 (type parameter of Generics.FishRetailer) was expected.
Объясните пожалуйста чайнику, почему классу тут нельзя передать Дженерик. Я не понимаю, почему тут не работает и почему выдает ошибку несоответствия типов, когда я использую один дженерик
class FishRetailer<Fish> - тут <Fish> не нужен. После имени класса в объявлении ставит идентификатор, а не конкретное имя типа
источник

AN

Alexander Nozik in Programming Offtop
Можно сделать так:
abstract class FishRetailer<T: Fish> : Retailer<T> {
   protected   abstract fun buildFish(str: String): T
 
   override fun sell(): T {
       println("Sell fish")
       return buildFish("")
   }
}
источник

AN

Alexander Nozik in Programming Offtop
и лучше дальше в @kotlin_start
источник

AM

Andrew Mikhaylov in Programming Offtop
Alexander Nozik
и лучше дальше в @kotlin_start
Та вы ж не прочитали целиком, что человек написал. :)
источник

AN

Alexander Nozik in Programming Offtop
Andrew Mikhaylov
Та вы ж не прочитали целиком, что человек написал. :)
Я прочитал, но может чего-то не понял
источник

AN

Alexander Nozik in Programming Offtop
Чего я не понял?
источник

AM

Andrew Mikhaylov in Programming Offtop
Alexander Nozik
Чего я не понял?
Автор написал, что пока формулировал вопрос, он у него сам разрешился :)
источник

AN

Alexander Nozik in Programming Offtop
Andrew Mikhaylov
Автор написал, что пока формулировал вопрос, он у него сам разрешился :)
А зачем тогда его писать?
источник

AN

Alexander Nozik in Programming Offtop
Я еще не проснулся. У меня утренний тупняк
источник

AM

Andrew Mikhaylov in Programming Offtop
Alexander Nozik
А зачем тогда его писать?
Потому что вы сами попросили его написать :)
источник