Size: a a a

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

2017 July 13

AB

Alex Bekhtin in Язык программирования Julia / Julia programming language
Если несколько функций для разных параметров, то иногда надо понять "А какая же будет работать?"
источник

AB

Alex Bekhtin in Язык программирования Julia / Julia programming language
источник

AK

Andrey Konovalov in Язык программирования Julia / Julia programming language
julia> @code_llvm +(1,1)

; Function Attrs: sspreq
define i64 @"julia_+_130862"(i64, i64) #0 {
top:
   %2 = add i64 %1, %0, !dbg !8
   ret i64 %2, !dbg !8
}

OMG просто
источник

I

I in Язык программирования Julia / Julia programming language
за видео спасибо, 2 часа там есть что посмотреть наверное
источник

AK

Andrey Konovalov in Язык программирования Julia / Julia programming language
Я всё понял! @code_native - просто макрос для показа "нативного кода" функции. В адекватном своём варианте выдаёт простой и красивый ассемблерный код в нотации AT&T
источник

AK

Andrey Konovalov in Язык программирования Julia / Julia programming language
А вот если функция объявлена, как мерзкое нехорошее @code_llvm - вот тут-то и лезет из @code_native этот самый LLVM-ный код
источник

AK

Andrey Konovalov in Язык программирования Julia / Julia programming language
источник

I

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

I

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

I

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

AK

Andrey Konovalov in Язык программирования Julia / Julia programming language
Ну когда ассемблер - тут очень даже понятно, зачем. Может, оно неэффективно компилируется :)
источник

AK

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

AK

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

AL

Anatoly Levenchuk in Язык программирования Julia / Julia programming language
Только мануал лучше брать версии 0.6 -- https://docs.julialang.org/en/release-0.6/manual/metaprogramming/
источник

I

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

AK

Andrey Konovalov in Язык программирования Julia / Julia programming language
Кстати, есть приложение на Google Play с мануалом с офсайта. Если бы не казало рекламу - вполне себе приложение. Я в метро читаю таким образом, а то мне как-то не хочется подписываться на их бесплатный WiFi
источник

AL

Anatoly Levenchuk in Язык программирования Julia / Julia programming language
Вот старенький текст: http://blog.leahhanson.us/post/julia/julia-introspects.html
источник

I

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

AK

Andrey Konovalov in Язык программирования Julia / Julia programming language
Вообще я тут посмотрел на это: http://www.freebasic.net/wiki/wikka.php?wakka=CatPgThreading

И понял, что BASIC опережает на Julia поддержкой тредов на пару десятков корпусов.
И это при том, что он не умеет гомоиконичность :(
источник

AK

Andrey Konovalov in Язык программирования Julia / Julia programming language
Асм - это единственный способ выйти из замкнутого круга современного программисткого безумия. Понимание ассемблерного кода - очень полезная штука для того, чтобы научиться "зрить в корень"
источник