Size: a a a

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

2019 August 08

VG

Viktor G. in Язык программирования Julia / Julia programming language
function wtf3()
   println("Creating arr inside function")
   @time arr :: Array{String} = collect(a0.bs);
   println("Doing loop")
   cnt = wtf2(arr)
   cnt
end
источник

VG

Viktor G. in Язык программирования Julia / Julia programming language
вложенная функция нормально специализируется
источник

VG

Viktor G. in Язык программирования Julia / Julia programming language
от авторов языка где-то была такая рекомендация по оптимизации
источник

ZZ

Zorro Zorroff in Язык программирования Julia / Julia programming language
если все так, то это гораздо печальнее чем я думал.
получается, КОД функции разный, если переменная используемая в цикле приходит из типизированного аргумента или из так же точно типизированной локальной переменной
источник

VG

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

ZZ

Zorro Zorroff in Язык программирования Julia / Julia programming language
типы одинаковые, Array{String} !!!
источник

VG

Viktor G. in Язык программирования Julia / Julia programming language
просто вы помогаете компилятору нормально специализировать
источник

VG

Viktor G. in Язык программирования Julia / Julia programming language
в первом случае у него это не очень получается
источник

ZZ

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

ZZ

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

ZZ

Zorro Zorroff in Язык программирования Julia / Julia programming language
по всему получается, что не одинаковые.
источник

ZZ

Zorro Zorroff in Язык программирования Julia / Julia programming language
хотя этого никак не увидеть, напр typeof не показывает
источник

ZZ

Zorro Zorroff in Язык программирования Julia / Julia programming language
println("Doing loop over ", typeof(arr))
источник

ZZ

Zorro Zorroff in Язык программирования Julia / Julia programming language
что там еще специализировать, казалось бы
источник

ZZ

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

KT

Kirill Tsaregorodtsev in Язык программирования Julia / Julia programming language
Что будет, если передавать датафрейм не в функцию, а если он прямо на лету изменит тип, когда вы его в функции копируете
источник

KT

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

ZZ

Zorro Zorroff in Язык программирования Julia / Julia programming language
я не понимаю при чем тут это. Я уже сделал collect, и у меня уже Array{String}, это копия (с гарантиями).
источник

ZZ

Zorro Zorroff in Язык программирования Julia / Julia programming language
кирилл, к тому же это не отвечает на вопрос, а чем тогда все реализации отличаются друг от друга, если кто-то изменит его тип в другом потоке одинаково для всех.
источник

KT

Kirill Tsaregorodtsev in Язык программирования Julia / Julia programming language
Можно на stack спросить или на discourse, там люди точно ответят, в чем тонкости 😢
источник