Size: a a a

Язык программирования Julia / Julia programming language

2020 February 25

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
Попробуй какой-нибудь collect сверху бросить
источник

ВФ

Виктор Федоров in Язык программирования Julia / Julia programming language
typeof([k for k=1:3])
Array{Int64,1}
источник

AP

Alexander Plavin in Язык программирования Julia / Julia programming language
Виктор Федоров
Спасибо за ответ

А какое может быть объяснение:


julia> typeof([t->1*t,  t->2*t,  t->3*t]) <: Vector{Function}
true

julia> typeof([t->k*t for k=1:3]) <: Vector{Function}
false
просто t -> k*t независимо от параметра t имеет один и тот же тип, это одно и то же выражение, и в замыкании просто хранится число k в виде поля
источник

AP

Alexander Plavin in Язык программирования Julia / Julia programming language
а t -> 1*t, t -> 2*t и т.п. - разные функции
источник

AP

Alexander Plavin in Язык программирования Julia / Julia programming language
они никак друг с другом не связаны
источник

AP

Alexander Plavin in Язык программирования Julia / Julia programming language
поэтому получается наименьший  общий тип элемента - Function
источник

ВФ

Виктор Федоров in Язык программирования Julia / Julia programming language
Теперь понятно
источник

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
💯
источник

AP

Alexander Plavin in Язык программирования Julia / Julia programming language
вообще если принимается контейнер только для чтения и хочется описать его тип, то в большинстве случаев имеет смысл писать Vector{<:XXX}
источник

KT

Kirill Tsaregorodtsev in Язык программирования Julia / Julia programming language
Alexander Plavin
вообще если принимается контейнер только для чтения и хочется описать его тип, то в большинстве случаев имеет смысл писать Vector{<:XXX}
А если ожидается что-то, по чему можно итерироваться?
источник

KT

Kirill Tsaregorodtsev in Язык программирования Julia / Julia programming language
Не только вектор, но тупли и тд )
источник

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
А это разве возможно?
Ведь способность к интерированию определяется наличием метода iterate но это довольно слабое условие.
источник

AP

Alexander Plavin in Язык программирования Julia / Julia programming language
Kirill Tsaregorodtsev
А если ожидается что-то, по чему можно итерироваться?
тогда без определения типа :)
источник

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
Можно трейтами наверное собрать наиболее используемые случаи, но это такое...
источник

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
Вообще, если бы даже такой тип был, то разница была бы только в том, в каком месте функция упадёт.

Сейчас она свалится в момент вызова iterate, а так она будет падать на этапе компиляции.
источник

AP

Alexander Plavin in Язык программирования Julia / Julia programming language
> на этапе компиляции

точнее на этапе вызова собственно функции, в которой вызывается iterate
источник

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
Или так, да.
источник

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
В общем она свалится если тип неправильный и отработает если тип правильный в том и другом случае.
источник

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
Поэтому нет особой необходимости искать как поставить ограничения.
источник
2020 February 26

AZ

Aleksey Zhdanov in Язык программирования Julia / Julia programming language
Аналоги rosettacode и codepedia, projecteuler, hackerrank посоветуйте кто может где Julia.
источник