Size: a a a

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

2020 February 09

АО

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

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
То есть, сушествует разница между

function dropxx(t::NTuple)
   ntuple(i -> t[i + 1], length(t) - 2)
end

и

function collectn(n::Int)
    ntuple(identity, n)
end
источник

KT

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

KT

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

KT

Kirill Tsaregorodtsev in Язык программирования Julia / Julia programming language
То есть чтобы тип был N+M
источник

АО

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

KT

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

АО

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

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
Ну, то есть точно работают конструкции вроде этой
function concat(t1::NTuple, t2::NTuple)
   ntuple(i -> i > length(t1) ? t2[i - length(t1)] : t1[i], length(t1) + length(t2))
end
источник

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
Хотя конкатенацию конечно проще через splat делать
(t1..., t2...)
источник

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
Эта штука же ведь splat называется? Могу ошибиться, не судите строго :)
источник

RS

Roman Samarev in Язык программирования Julia / Julia programming language
Андрей Оськин
Эта штука же ведь splat называется? Могу ошибиться, не судите строго :)
источник

АО

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

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
Мне ещё кинули интересную ссылку
https://github.com/mitmath/18S096
источник

АО

Андрей Оськин in Язык программирования Julia / Julia programming language
Это для тех, кому интересно глубоко в Julia погрузиться, хотя сам не смотрел.
Но так как там основатели языка рассказывают, то видимо что-то серьёзное.
источник

RS

Roman Samarev in Язык программирования Julia / Julia programming language
листнул несколько блокнотов. Похоже, что они здесь рассматривают базовые аспекты создания Julia и обоснование зачем она нужна. С примерами на C и демонстрацией как плохо это выгладит в Питоне.
источник

АО

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

АО

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

RS

Roman Samarev in Язык программирования Julia / Julia programming language
с точки зрения аспектов джулиястроительства как такового, думаю, что мало что поменялось. Акцент именно на системную часть
источник

RS

Roman Samarev in Язык программирования Julia / Julia programming language
как и менеджеры памяти и пр. Меняются в среднем раз в 20 лет 🙂
источник