Вопросы по теме 'structural-typing'
Протоколы Clojure против структурных типов Scala
После просмотра интервью с Ричем Хикки на Протоколы в Clojure 1.2, и, зная очень мало о Clojure, у меня есть несколько вопросов по протоколам Clojure:
Предназначены ли они для того же, что и структурные типы в Scala? Какие преимущества у...
2378 просмотров
schedule
25.07.2022
Получение структурного типа с помощью методов анонимного класса из макроса
Предположим, мы хотим написать макрос, который определяет анонимный класс с некоторыми членами типа или методами, а затем создает экземпляр этого класса, статически типизированный как структурный тип с этими методами и т. Д. Это возможно с помощью...
8803 просмотров
schedule
05.09.2022
Структурная типизация в Scala: использование абстрактного типа в уточнении
Скажем, у меня есть следующий код:
class Bar { def bar(b:Bar):Boolean = true }
def func(b:Bar) = b.bar(b)
Вышеупомянутое работает нормально. Класс Bar определен в сторонней библиотеке, и существует несколько подобных классов, каждый из...
262 просмотров
schedule
26.02.2024
Странность параметра структурного типа коллекции
Вроде все просто, а понять не могу...
Это компилирует:
object CanFoo1 {
def foo(): Unit = {
println("Yup, I can foo alright")
}
}
object CanFoo2 {
def foo(): Unit = {
println("And I can foo with the best")
}
}
trait A {
type...
41 просмотров
schedule
28.03.2024
В чем разница между использованием класса и интерфейса?
В чем разница между этим
export class Comment {
likes: string;
comment: string;
constructor(likes: string, comment: string){
this.comment = comment;
this.likes = likes;
}
}
и это
export interface CommentInterface {...
1798 просмотров
schedule
24.02.2024
Можно ли использовать макрос для изменения сгенерированного кода вызова экземпляра структурного типа?
Например, в виде следующего кода:
object Test extends App
{
trait Class
{
val f1: Int
}
val c = new Class {
val f1: Int = 1
val f2: String = "Class"
}
println(c.f1)
println(c.f2)
}
Я...
86 просмотров
schedule
01.03.2023
Поддерживает ли Dotty уточнения?
Я с ужасом читаю, что будет со Scala 3, уделяя особое внимание изменениям в составных типах. Они всегда были чем-то вроде хака, поэтому чистые, настоящие типы пересечений, безусловно, являются улучшением. Я не смог найти ничего о том, что происходит...
143 просмотров
schedule
28.11.2022