[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 2ch.scのread.cgiへ]
Update time : 10/30 23:33 / Filesize : 168 KB / Number-of Response : 749
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Julia Juno Jupyter part1



1 名前:デフォルトの名無しさん [2016/02/12(金) 19:05:13.83 ID:zhNvVfnf.net]
LLVM で動く Julia のお勉強
Python に少し似てネイティブの速さで動く素敵な関数型言語
julialang.org/
junolab.org/
jupyter.org/

関連
Pythonista のための Julia 100 問 100 答
bicycle1885.hatenablog.com/entry/2014/12/23/170745

10 名前:デフォルトの名無しさん mailto:sage [2016/02/13(土) 10:17:20.41 ID:3L3e3K/U.net]
>っていうか最新のドキュソもまだ動かないサンプルのままだぞω

ああごめん動くわ

11 名前:デフォルトの名無しさん mailto:sage [2016/02/13(土) 10:22:27.58 ID:3L3e3K/U.net]
ccall(:printf, Void, (Ptr{Cchar}, Ptr{Cchar}), "%s", ccall((:curl_version, :libcurl), Ptr{Cchar}, ()))

err = ccall((:MessageBoxW, :user32), stdcall, UInt, (Ptr{UInt}, Ptr{Cwchar_t}, Ptr{Cwchar_t}, UInt), 0, Array{UInt16,1}([0x304C,0x3063,0xFF01,0]), Array{UInt16,1}([0x306C,0x308B,0x307D,0]), 0)

Array{UInt16,1}のところはArray{Cwchar_t}とかVector{Cwchar_t}とも書ける

err = ccall((:MessageBoxW, :user32), stdcall, UInt, (Ptr{UInt}, Ptr{Cwchar_t}, Ptr{Cwchar_t}, UInt), 0, Vector{Cwchar_t}([0x304C,0x3063,0xFF01,0]), Array{Cwchar_t}([0x306C,0x308B,0x307D,0]), 0)

これでいいね
loadは省けるけど毎回loadと解放してくれてるんだろうか

12 名前:デフォルトの名無しさん mailto:sage [2016/02/13(土) 10:31:38.04 ID:Qsay8O0p.net]
>>8
>OpenSSL/1.0.1e

ワロス

13 名前:デフォルトの名無しさん [2016/02/13(土) 11:59:14.88 ID:3L3e3K/U.net]
もう少しちらうら
julia> bytes2hex([65,97,66,98,0x5c])
ERROR: MethodError: `bytes2hex` has no method matching bytes2hex(::Array{Int32,1})
julia> bytes2hex(Array{UInt8,1}([65,97,66,98,0x5c]))
"416142625c"
julia> bytestring(Array{UInt8,1}([65,97,66,98,0x5c]))
"AaBb\\"
julia> hex2bytes("416142625c")
5-element Array{UInt8,1}: 0x41 0x61 0x42 0x62 0x5c
julia> string2bytes("AaBb\\")
ERROR: UndefVarError: string2bytes not defined
julia> stringbytes("AaBb\\")
ERROR: UndefVarError: stringbytes not defined
julia> read(IOBuffer("AaBb\\"))
ERROR: MethodError: `read` has no method matching read(::Base.AbstractIOBuffer{Array{UInt8,1}})
julia> read(IOBuffer("AaBb\\"), UInt8)
0x41
julia> read(IOBuffer("AaBb\\"), UInt8, length("AaBb\\"))
5-element Array{UInt8,1}: 0x41 0x61 0x42 0x62 0x5c

んー
マニュアルにはreaddim()があるって書いてあるのに・・・
何かimport忘れてるとか?
length省略できんのもなんだかな
勘違いならいいけど

14 名前:デフォルトの名無しさん mailto:sage [2016/02/13(土) 17:12:04.67 ID:AfSbfh5s.net]
ちょっと前から同名のAV女優が出てきて検索がちょっとアレになったよね
運が悪い

15 名前:デフォルトの名無しさん mailto:sage [2016/02/13(土) 17:45:27.64 ID:6qRaMcc6.net]
"どうすればPythonをJuliaと同じくらい速く動かせるのか? : 様々なやり方で計算の高速化を図る"
postd.cc/python_meets_julia_micro_performance/

16 名前:デフォルトの名無しさん [2016/02/13(土) 22:04:46.56 ID:zoieo+tE.net]
フォートランっぽい文法狂おしいほど嫌い

17 名前:デフォルトの名無しさん mailto:sage [2016/02/14(日) 11:00:37.07 ID:7sraJ7/r.net]
パッケージがおれおれやってみたばっかりで
まともなものが少ねーじゃねーか
これ PyPI よりひでーぞ
github っつーかオプソは害だな

18 名前:デフォルトの名無しさん [2016/02/14(日) 11:01:38.90 ID:7sraJ7/r.net]
>>16
21世紀にもなって添え字が 1 から始まるとかもうね



19 名前:デフォルトの名無しさん mailto:sage [2016/02/14(日) 11:11:08.67 ID:FXwepV/m.net]
おまいらなんだかんだ言って
みんなそれなりにやってんだな
ニヤニヤ

20 名前:デフォルトの名無しさん [2016/02/14(日) 19:24:28.30 ID:UnbFC5qc.net]
>1 乙
>14 前スレで見た覚えがある
>16 それな

21 名前:デフォルトの名無しさん [2016/02/15(月) 10:16:09.06 ID:TvNTryet.net]
コンパイル中のエラーよりも実行時の型エラーの方が厄介な言語だなこいつは。
慣れれば問題ないが。

22 名前:デフォルトの名無しさん [2016/02/15(月) 10:20:41.18 ID:TvNTryet.net]
>>13
非推奨っぽいが、
これでいいらしい。

"AaBb\\".data

代入も出来るようだ。

s = "AaBb\\"
s.data[2] = UInt8(64)
s

23 名前:デフォルトの名無しさん [2016/02/15(月) 10:21:13.05 ID:TvNTryet.net]
これは割りと嬉しいかも。

julia> @sprintf "ab [%7s]" "xあx"
"ab [ xあx]"

julia> @sprintf "ab [%-7s]" "xあx"
"ab [xあx ]"

julia> @sprintf "ab [%7s]" "xxx"
"ab [ xxx]"

julia> @sprintf "ab [%-7s]" "xxx"
"ab [xxx ]"

24 名前:デフォルトの名無しさん [2016/02/15(月) 10:31:07.93 ID:TvNTryet.net]
うむむ
julia> @sprintf "ab [%-7s]" bytestring(hex2bytes(""))
"ab [ ]"
julia> @sprintf "ab [%-7s]" bytestring(hex2bytes("4141E381824141"))
"ab [AAあAA ]"
julia> @sprintf "ab [%-7s]" bytestring(hex2bytes("4141E981824141"))
"ab [AA遂AA ]"
julia> @sprintf "ab [%-7s]" bytestring(hex2bytes("4141Ee81824141"))
"ab [AA\ue042AA ]"
julia> @sprintf "ab [%-7s]" bytestring(hex2bytes("4141Ef81824141"))
"ab [AA\uf042AA ]"
julia> @sprintf "ab [%-7s]" bytestring(hex2bytes("4141E881824141"))
"ab [AA聂AA ]"
julia> @sprintf "ab [%-7s]" bytestring(hex2bytes("4141E8e8824141"))
"ab [AA騂AA ]"
julia> @sprintf "ab [%-7s]" bytestring(hex2bytes("4141E9e8824141"))
"ab [AAꨂAA ]"

julia> @sprintf "ab [%-7s]" bytestring(hex2bytes("414155aa554141"))
ERROR: UnicodeError: invalid character index
in next at unicode/utf8.jl:65
in strwidth at strings/basic.jl:205
[inlined code] from printf.jl:159
in anonymous at no file:0

julia> @sprintf "ab [%-7s]" hex2bytes("414155aa554141")
"ab [UInt8[0x41,0x41,0x55,0xaa,0x55,0x41,0x41]]"

25 名前:デフォルトの名無しさん mailto:sage [2016/02/15(月) 11:19:37.91 ID:TvNTryet.net]
>>11
julia> ccall((:curl_version, :libcurl), Ptr{Cchar}, ())
Ptr{Int8} @0x6b29c060

julia> @sprintf "%s" ccall((:curl_version, :libcurl), Ptr{Cchar}, ())
"Ptr{Int8} @0x6b29c060"

んーこれも期待した動作と違うなぁ。

26 名前:デフォルトの名無しさん mailto:sage [2016/02/15(月) 11:28:27.71 ID:TvNTryet.net]
>>16
ifに括弧なしは一見便利だけどend強制されるのはPythonに慣れてるとうざく感じる。

julia> Array{UInt8}([1:n;]) == map(a -> UInt8(a), 1:n)
true

ちょっと気持ち悪いところもある。

27 名前:デフォルトの名無しさん mailto:sage [2016/02/15(月) 11:32:12.26 ID:TvNTryet.net]
julia> Array{UInt8}([1:n;]) == map(a -> UInt8(a), (1:n))
true

julia> Array{UInt8}([1:n]) == map(a -> UInt8(a), (1:n))
警告出るが
true
(二回目からは警告出なくなる?)

julia> Array{UInt8}((1:n)) == map(a -> UInt8(a), (1:n))
エラー

28 名前:デフォルトの名無しさん mailto:sage [2016/02/15(月) 11:45:55.52 ID:2YjvKDPc.net]
>>25
bytestring(ccall((:curl_version, :libcurl), Ptr{Cchar}, ()))



29 名前:デフォルトの名無しさん mailto:sage [2016/02/15(月) 11:49:21.03 ID:TvNTryet.net]
>>28
有賀d。
>>24でも書いたけどbytestringってこんなデータ来ると死ぬから使いたくないなぁ。
julia> bytestring(hex2bytes("414155aa554141"))

30 名前:デフォルトの名無しさん mailto:sage [2016/02/15(月) 12:16:36.12 ID:TvNTryet.net]
julia> pointer_to_array(ccall((:curl_version, :libcurl), Ptr{Cchar}, ()), n)
でnバイト分のArray{Int8}になるみたいだけどなぜかデフォでUInt8じゃないのが気に入らないなぁ。

julia> Array{UInt8}(pointer_to_array(ccall((:curl_version, :libcurl), Ptr{Cchar}, ()), n))
とかいちいち書くの面倒だなぁ。

31 名前:デフォルトの名無しさん mailto:sage [2016/02/15(月) 12:19:08.24 ID:2YjvKDPc.net]
>>30
Cchar == UInt8 # false
Cchar == Int8 # true

32 名前:デフォルトの名無しさん mailto:sage [2016/02/15(月) 12:21:09.84 ID:TvNTryet.net]
>>31
julia> pointer_to_array(ccall((:curl_version, :libcurl), Ptr{UInt8}, ()), n)
できました!!
ありがとうございます!!!

33 名前:デフォルトの名無しさん mailto:sage [2016/02/15(月) 18:04:10.07 ID:0lvw83wi.net]
意味わからずbytestring多用するのは危険

34 名前:デフォルトの名無しさん mailto:sage [2016/02/16(火) 11:03:22.23 ID:OHS4PN3k.net]
今はまだ julia 0.3.2 対応みたいだけど web から試せるよ
https://try.jupyter.org/

IJulia をインストールすれば自分のサイトでもできるよ
https://github.com/JuliaLang/IJulia.jl

35 名前:デフォルトの名無しさん mailto:sage [2016/02/16(火) 11:49:26.30 ID:kTgVK006.net]
>>14
ちょっと前から声が大きいだけで連投するうざいのが住み着いて2ちゃんはちょっとアレになったよね
筋が悪い

36 名前:デフォルトの名無しさん mailto:sage [2016/02/16(火) 12:08:19.40 ID:OHS4PN3k.net]
日本語サイトしか見ない病だ

37 名前:デフォルトの名無しさん [2016/02/16(火) 17:07:24.65 ID:ZLhr12yF.net]
ツイッターでjulia検索してもひどい
最悪だ

38 名前:デフォルトの名無しさん mailto:sage [2016/02/16(火) 17:38:07.56 ID:3nSqd4oT.net]
英語だが Julia をつかった科学計算を丁寧に解説しているサイト
ちなみに著者の一人 Sargent はノーベル経済学賞をとっている

quant-econ.net/jl/



39 名前:デフォルトの名無しさん [2016/02/17(水) 08:55:28.12 ID:onBH4M/w.net]
Python版はこちら
quant-econ.net/py/

40 名前:デフォルトの名無しさん mailto:sage [2016/02/18(木) 11:45:57.02 ID:S96kZ0X7.net]
>>38
GJ
勉強になります
ありがとう

41 名前:デフォルトの名無しさん mailto:sage [2016/02/18(木) 15:58:36.56 ID:HBijeS9p.net]
exe 化してみたら dll いっぱい作られて 200MB 超えるな
exe なのにロードして実行されるまで時間かかりすぎる
普通に julia --precompiled=yes hoge.jl で実行する方が速かった
python の exe 化と大して変わらん

42 名前:デフォルトの名無しさん [2016/02/18(木) 19:42:32.50 ID:AuqopEbQ.net]
想像以上にアホの子かもな

julia> "あいう"[end:end]
"う"
julia> "あいう"[end-1:end]
ERROR: UnicodeError: invalid character index
julia> "あいう"[end-3:end]
"いう"
julia> "あいう"[1:end]
"あいう"
julia> "あいう"[2:end]
ERROR: UnicodeError: invalid character index
julia> "あいう"[2]
ERROR: UnicodeError: invalid character index
julia> "あいう"[3]
ERROR: UnicodeError: invalid character index
julia> "あいう"[4]
'い'
julia> length("あいう")
3
julia> length("1いう")
3
julia> ("1いう")[2]
'い'
julia> ("1いう")[end]
'う'
julia> ("1いう")[3]
ERROR: UnicodeError: invalid character index

43 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 09:48:06.21 ID:hw/X0Y/j.net]
>>42
# 文字列は文字の配列のように添字アクセスできます
"This is a string"[1] # => 'T' # Julia では添字は 1 から始まります
# ただし、UTF8 文字列の場合は添字アクセスではうまくいかないので、
# イテレーションを行ってください(map 関数や for ループなど)

44 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 09:52:08.93 ID:hw/X0Y/j.net]
Pythonの実行速度に満足できないあなたに
www.mwsoft.jp/programming/julia/python_to_julia.html

正直なところ、まだ足りないところも多い言語なので、
今の時点で飛び込んでもそんなに良いことはないかもしれません。

個人的には分析するデータの整形をさせたり、簡単なシュミレータを書き捨てる用途などで使っています。

適当に書いてもそれなりに速度が出るし記法もシンプルで書きやすいので、
Pythonよりも便利だと感じていますが、
ライブラリの揃いや信頼性などの問題で、前処理だけはJuliaでやって
肝心なところはPythonやRで、といった流れになることもしばしばです。

45 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 10:01:01.67 ID:hw/X0Y/j.net]
Pythonの実行速度に満足できないあなたに
www.mwsoft.jp/programming/julia/python_to_julia.html

これからJuliaを始める方へ
これからJuliaを始めようという方は、まずは下記ページに書かれているサンプルコードを眺めてみると、
どんな言語か理解できると思います。

Julia By Example
www.scolvin.com/juliabyexample/
統計関連のライブラリがどの程度揃っているかは、下記にまとめられています。
ちゃんとDataFrame的なものもあって、そこそこ揃ってはいます。
Julia Statistics
https://github.com/JuliaStats
入門書などの情報は出版されれば下記に掲載されると思う。(まだ入門書なんて存在しねーけどな)
Learning Julia
julialang.org/learning/
公式サイトのドキュメントも充実しています。充実し過ぎてどこから読めばいいのかわからなくなります。
Julia Documentation
docs.julialang.org/
あとは挙動でわからないことがあれば、ソースを読もう。
わかりやすいシンプルなコードなので、意外と簡単に読めます。
言語作者が書いたコードに触れておくと勉強になるしね。
JuliaLang/julia - GitHub
https://github.com/JuliaLang/julia

本当はもっと初見向きなサイトを紹介したかったんだけど、あまり見当たらない。
今の調子ならそのうち増えてくると思うので、
その手の本を書店で見かけるようになった時が始めるタイミングとしては良いんじゃないだろうか。
※本項は更新情報があれば適宜変更します

46 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 10:02:23.04 ID:hw/X0Y/j.net]
>>43
引用元わすれてた
https://learnxinyminutes.com/docs/ja-jp/julia-jp/

47 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 10:04:44.54 ID:hw/X0Y/j.net]
julia> run(`cmd /c dir`)
したときは日本語が UTF-8 に変換されてるのかな

julia> open(`cmd /c dir`) do f
for l in eachline(f)
println(chomp(l))
end
end
すると結果が違うような気がするけど気のせいかな

julia> open("test_out.txt", "w") do w
open(`cmd /c dir`) do r
for l in eachline(r)
println(w, chomp(l)) # これだとSJISで書き込まれているな
end
end
end

48 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 10:19:38.04 ID:hw/X0Y/j.net]
julia> (3+2im)*(3-2im)
13 + 0im
julia> 1//3 + 1//3 + 1//3
1//1
julia> 2π
6.283185307179586
julia> r = 4
4
julia> 2πr
ERROR: UndefVarError: πr not defined
julia> 2π*r
25.132741228718345

実におしい



49 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 13:47:52.38 ID:5RH0Tfsb.net]
>>11
ccall((:MessageBoxW, :user32), stdcall, UInt, (Ptr{Void}, Ptr{Cwchar_t}, Ptr{Cwchar_t}, UInt),
C_NULL, [0x304C,0x3063,0xFF01,0x0000], [0x306C,0x308B,0x307D,0x0000], 0)

この方が良くね?

50 名前:デフォルトの名無しさん mailto:sage [2016/02/20(土) 11:05:53.32 ID:Z/BOfpky.net]
ccall((:MessageBoxW, :user32), stdcall, UInt, (Ptr{Void}, Ptr{Cwchar_t}, Ptr{Cwchar_t}, UInt),
C_NULL, pointer("がっ!"), pointer("ぬるぽ"), 0)

これだと化けるから、

ccall((:MessageBoxA, :user32), stdcall, UInt, (Ptr{Void}, Ptr{Cchar}, Ptr{Cchar}, UInt),
C_NULL, pointer("がっ!"), pointer("ぬるぽ"), 0)

にしたんだがやっぱり化ける。

原因はわかるんだが、wchar_t の文字列は作れない子なの?

51 名前:デフォルトの名無しさん mailto:sage [2016/02/20(土) 11:46:21.48 ID:Z/BOfpky.net]
>>41
こういうことらしい。
julia> "ぬるぽ"[nextind("ぬるぽ", 0):end]
"ぬるぽ"
julia> "ぬるぽ"[nextind("ぬるぽ", 1):end]
"るぽ"
julia> "ぬるぽ"[nextind("ぬるぽ", 2):end]
"るぽ"
julia> "ぬるぽ"[nextind("ぬるぽ", 3):end]
"るぽ"
julia> "ぬるぽ"[nextind("ぬるぽ", 4):end]
"ぽ"
julia> "ぬるぽ"[nextind("ぬるぽ", 5):end]
"ぽ"
julia> "ぬるぽ"[nextind("ぬるぽ", 6):end]
"ぽ"
julia> "ぬるぽ"[nextind("ぬるぽ", 7):end]
""
julia> "ぬるぽ"[nextind("ぬるぽ", end-1):end]
"ぽ"

52 名前:デフォルトの名無しさん mailto:sage [2016/02/20(土) 11:59:22.33 ID:Z/BOfpky.net]
"るぽ"をendの差分で取るのはループしないかぎりむりぽか

53 名前:デフォルトの名無しさん mailto:sage [2016/02/21(日) 10:29:39.26 ID:zmvsu5mb.net]
>>49-50
julia> ccall((:MessageBoxW, :user32), stdcall, UInt, (Ptr{Void}, Ptr{Cwchar_t}, Ptr{Cwchar_t}, UInt),
C_NULL, pointer(utf16("がっ!")), pointer(utf16("ぬるぽ")), 0)
julia> ccall((:MessageBoxW, :user32), stdcall, UInt, (Ptr{Void}, Ptr{Cwchar_t}, Ptr{Cwchar_t}, UInt),
C_NULL, pointer(wstring("がっ!")), pointer(wstring("ぬるぽ")), 0)

>>42-43 >>51-52
julia> utf16("ぬるぽ")[end-1:end]
"るぽ"
julia> wstring("ぬるぽ")[end-1:end]
"るぽ"

どうしても UTF-8 のままが良いなら
julia> s[prevind(s, end):end]
"るぽ"

docs.julialang.org/en/release-0.4/stdlib/strings/
読め

結論
>>42 がアホ

54 名前:デフォルトの名無しさん [2016/02/21(日) 11:33:03.42 ID:zmvsu5mb.net]
地雷満載

julia> length(utf16("あいう"))
3
julia> sizeof(utf16("あいう"))
6
julia> endof(utf16("あいう"))
3
julia> sizeof(utf16("あいう").data)
8
julia> endof(utf16("あいう").data)
4

55 名前:デフォルトの名無しさん [2016/02/22(月) 12:14:35.86 ID:Y1bHL8fN.net]
PythonよりUnicodeの扱いが親切だと思うω

56 名前:デフォルトの名無しさん [2016/02/22(月) 17:04:35.55 ID:Y1bHL8fN.net]
if __name__ == "__main__": みたいなのは無いんかな

57 名前:デフォルトの名無しさん mailto:sage [2016/02/22(月) 17:23:08.96 ID:Y1bHL8fN.net]
自己解決 thx!
https://groups.google.com/forum/#!topic/julia-users/ufpi8tV7sk8

58 名前:デフォルトの名無しさん mailto:sage [2016/02/22(月) 18:32:57.93 ID:QLpZ1xcH.net]
馬鹿には無理



59 名前:デフォルトの名無しさん mailto:sage [2016/02/23(火) 05:19:15.92 ID:I8nTY0JT.net]
DLL は作れるのかな?

60 名前:デフォルトの名無しさん mailto:sage [2016/02/23(火) 12:24:16.92 ID:SVaKsmEW.net]
open(hoge) do f
fuga(f)
end

みたいな do end 出来る関数ってどうやって作るんですか?

61 名前:デフォルトの名無しさん mailto:sage [2016/02/23(火) 12:56:21.77 ID:I8nTY0JT.net]
julia> ASCIIString <: AbstractString
true

julia> Array{ASCIIString, 1} <: Array{AbstractString, 1}
false

julia> Array{ASCIIString, 1} <: Array{Union{ASCIIString, UTF8String}, 1}
false

julia> Array{Union{ASCIIString, UTF8String}, 1} <: Array{AbstractString, 1}
false

julia> typeof(["abc"]) <: Array{ASCIIString, 1}
true

julia> typeof(["abc"]) <: Array{AbstractString, 1}
false

julia> typeof(["abc"]) <: Array{Union{ASCIIString, UTF8String}, 1}
false

これなんとかならんか?

62 名前:デフォルトの名無しさん mailto:sage [2016/02/25(木) 11:01:35.11 ID:xnX4JkuY.net]
糞認定です。
おめでとう。

63 名前:デフォルトの名無しさん [2016/02/26(金) 14:18:09.06 ID:VQGl6zaq.net]
「XXX を削除できません。
ほかの人またはプログラムによって使用されています。
ファイルを使用している可能性があるプログラムをすべて閉じてから、やり直してください。」

が出る場合、そのファイルを使用しているプロセスを知る方法はありますでしょうか

あるよ
ただ、簡単ならいくらMicrosoftが能無しでもそこのダイアログに誰が開いているか表示するだろう
そのくらい面倒くさくまともな方法じゃないってことは察しろ

64 名前:デフォルトの名無しさん [2016/03/20(日) 10:27:12.46 ID:0HfdLt5e.net]
未完成感半端ない

65 名前:デフォルトの名無しさん [2016/04/02(土) 12:07:37.96 ID:thGUj6UI.net]
未来の言語

66 名前:デフォルトの名無しさん [2016/04/20(水) 14:02:09.01 ID:KhdkVfqP.net]
予知能力

67 名前:デフォルトの名無しさん mailto:sage [2016/04/21(木) 15:08:23.44 ID:Jg/FpCZZ.net]
>>61
言いたいことは分かるけど
継承関係にないジェネリッククラスに継承関係を認めたら
それはそれで問題が起きるから

特に配列の場合はパフォーマンスが犠牲になるので受け入れがたいし
C++とかだとバグの温床なので「できて当然」という考えは捨てた方がいい

68 名前: ◆q23lfZvn.g mailto:sage [2016/04/30(土) 09:02:37.09 ID:FuZy8SxD.net]
勉強中



69 名前:デフォルトの名無しさん [2016/05/01(日) 13:10:40.52 ID:tKi6j9CT.net]
匿名通信(Tor、i2p等)ができるファイル共有ソフトBitComet(ビットコメット)みたいな、
BitTorrentがオープンソースで開発されています

言語は何でも大丈夫だそうなので、P2P書きたい!って人居ませんか?

Covenantの作者(Lyrise)がそういう人と話したいそうなので、よろしければツイートお願いします
https://twitter.com/Lyrise_al

ちなみにオイラはCovenantの完成が待ち遠しいプログラミングできないアスペルガーw


The Covenant Project
概要

Covenantは、純粋P2Pのファイル共有ソフトです

目的

インターネットにおける権力による抑圧を排除することが最終的な目標です。 そのためにCovenantでは、中央に依存しない、高効率で検索能力の高いファイル共有の機能をユーザーに提供します

特徴

Covenant = Bittorrent + Abstract Network + DHT + (Search = WoT + PoW)

接続は抽象化されているので、I2P, Tor, TCP, Proxy, その他を利用可能です
DHTにはKademlia + コネクションプールを使用します
UPnPによってポートを解放することができますが、Port0でも利用可能です(接続数は少なくなります)
検索リクエスト、アップロード、ダウンロードなどのすべての通信はDHT的に分散され、特定のサーバーに依存しません


70 名前:デフォルトの名無しさん [2016/05/02(月) 15:31:15.58 ID:aR8AOrvI.net]
うざっ

71 名前:デフォルトの名無しさん mailto:sage [2016/05/02(月) 19:04:53.82 ID:tya74GVe.net]
>>1
www.slideshare.net/ussopyon/2-46383560

72 名前:デフォルトの名無しさん [2016/05/14(土) 14:39:51.17 ID:r8zKr16p.net]
あと10年はかかるんじゃね

73 名前:デフォルトの名無しさん [2016/05/16(月) 18:05:31.33 ID:DkcwsRla.net]
T.K.

74 名前:デフォルトの名無しさん mailto:sage [2016/05/18(水) 13:16:34.04 ID:u7J2zmgl.net]
まともな開発者が使うなら何でもいいんだよ
juliaユーザーは一概にレベルが低いから信頼性の低いライブラリと化学反応を起こして爆発するのだ
ただしnodeよりマシか

75 名前:デフォルトの名無しさん mailto:sage [2016/05/31(火) 06:58:34.84 ID:p6bvKsCE.net]
こうして思うとmatlabの功罪は大きいな

76 名前:デフォルトの名無しさん [2016/05/31(火) 13:36:58.59 ID:yIUZknFd.net]
初心者に Fortran 教えるくらいなら Julia の方がマシ

77 名前:デフォルトの名無しさん [2016/05/31(火) 17:49:10.36 ID:yIUZknFd.net]
めも
marui.hatenablog.com/entry/20120221/1329823079

78 名前:デフォルトの名無しさん [2016/06/02(木) 08:32:20.78 ID:O7OWJX/G.net]
Jupyter Notebookで説明書きの通りのコードを入れても動きません。
terminals are unavailable と表示されてるのですが、これが動かない理由でしょうか。



79 名前:デフォルトの名無しさん mailto:sage [2016/06/10(金) 16:36:24.64 ID:8yNz9kCr.net]
C資産との連携を強調してるけど
JuliaでC呼ぶのは苦痛でしかない
Cで書いた方がまし

80 名前:デフォルトの名無しさん [2016/06/11(土) 15:43:11.34 ID:iSPIsEmM.net]
馬鹿には無理

81 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 14:44:15.88 ID:zgrawcOE.net]
本家も放置?

82 名前:デフォルトの名無しさん [2016/07/04(月) 12:10:46.03 ID:bmDp8Deu.net]
相変わらずだな

514 デフォルトの名無しさん sage 2016/07/04(月) 01:22:47.14 a5Gl8mUE

Juliaの開発、俺が引き受けるから科研費くれ
という主張をしてみるか悩んでる

515 デフォルトの名無しさん sage 2016/07/04(月) 01:35:22.05 WZmggq2i

Julia で検索したら、AV 動画見たばかりでワロタ w

516 デフォルトの名無しさん sage 2016/07/04(月) 01:36:38.53 WZmggq2i

ありゃ、
AV 動画ばかりって書きたかったの…

517 デフォルトの名無しさん sage 2016/07/04(月) 01:44:34.13 Jqw/8rJ7

私も今まさにそれ思ってた>AVばっかり

83 名前:デフォルトの名無しさん mailto:sage [2016/07/05(火) 13:25:11.27 ID:3gyxqmIo.net]
Juliaってデータ分析というより数値計算じゃないの
全部インメモリの固定長配列にブチ込んでループぶん回す昔ながらのやつだよね

84 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 12:37:52.43 ID:T23wVNy/.net]
別にデータ分析以外の数値計算が出来ないと言っている訳じゃないし

昔ながらのやつを現代的に書けるというだけでも有意義だろう

85 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 14:28:27.41 ID:X105+0ra.net]
なんで >>83 へのレスが >>84 みたいなことになるんだろ
文盲かな?

86 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 11:04:48.07 ID:bjxB4lA1.net]
なんで >>84 へのレスが >>85 みたいなことになるんだろ
文盲かな?

87 名前:デフォルトの名無しさん [2016/07/13(水) 17:16:46.46 ID:Zm0ukFfg.net]
文盲乙

A Summary of Features
https://www.youtube.com/watch?v=B9moDuSYzGo

Calling C Code
docs.julialang.org/en/release-0.4/manual/calling-c-and-fortran-code/

88 名前:デフォルトの名無しさん [2016/07/15(金) 17:01:44.97 ID:8P+uiz2j.net]
誤解されてるようなので

>実際コード書いてても Python や C++ と比べて julia のコードって汚いんだよな

特定の条件がそろったときだけど
綺麗に描けることもある



89 名前:デフォルトの名無しさん mailto:sage [2016/07/15(金) 22:38:04.14 ID:3IYjBgbR.net]
誤爆か

言語内DSLを別言語とみなすなら
C++で綺麗に書けるものがjuliaで書くと汚いってことは考えにくいんだが?

C++は数値を表す抽象型が標準にないのが致命的
そのくせ最近までサイズ固定の整数型がなかった

pythonについてはラムダ式が好きになれない(汚いとは別だが)

まぁjuliaに求めるものは綺麗さじゃなく実用性なんだ
おっぱい的な意味で

90 名前:デフォルトの名無しさん [2016/07/18(月) 12:18:17.33 ID:DeXLreOM.net]
やっと気付いた
漏れはきっと end が嫌いなんだ

91 名前:デフォルトの名無しさん [2016/07/19(火) 12:43:59.43 ID:3sf6xm4M.net]
julia> reinterpret(Bool, 1)
true

julia> reinterpret(Bool, 2)
false

julia> reinterpret(Bool, 3)
true

julia> reinterpret(Bool, 4)
false

julia> reinterpret(Bool, 0)
false

julia> reinterpret(Bool, -1)
true

julia> reinterpret(Bool, -2)
false

ワロス

92 名前:デフォルトの名無しさん mailto:sage [2016/07/20(水) 12:33:08.99 ID:IKGpFUMW.net]
笑いどころがわからない

配列用でないreinterpretはconvertと違って慎重に使うべきもの

julia> reinterpret(Bool, 256)
false
これは気持ち悪い

……と開発者も思ったらしくv0.5ではエラーになる見込み

93 名前:デフォルトの名無しさん mailto:sage [2016/07/20(水) 21:10:41.79 ID:AXsJLLhK.net]
間にscheme入ってるならpythonに近い文法に変換するのも簡単に出来るのでは?

94 名前:デフォルトの名無しさん mailto:sage [2016/07/20(水) 22:23:38.39 ID:IKGpFUMW.net]
pythonに近い文法を求めているならpython使えばいいんでは?
てかschemeに何の関係が?

95 名前:デフォルトの名無しさん [2016/07/21(木) 18:47:37.68 ID:Vj/xPVWN.net]
S式でなんでもできるのは面白いな

96 名前:デフォルトの名無しさん mailto:sage [2016/07/21(木) 18:53:51.10 ID:IyjPITzN.net]
マクロで真っ黒

97 名前:デフォルトの名無しさん mailto:sage [2016/07/22(金) 11:45:49.87 ID:f6dSUOKk.net]
>>7-11 >>25 >>28 >>30-32
定義はmacro使うと楽

macro c(restype, fnc, argtypes)
local args = [symbol("a", n) for n in 1:length(argtypes.args)]
quote
$(esc(fnc))($(args...)) = ccall($(string(fnc)), $restype, $argtypes, $(args...))
end
end

@c UInt32 printf (Ptr{Cchar},)
@c UInt32 printf (Ptr{Cchar}, UInt32,)

printf(pointer(Array{UInt8,1}([65,66,0,67,68,0,0])))
printf("%s\n", pointer(Array{UInt8,1}([65,66,0,67,68,0,0])))

macro m(lib, restype, fnc, argtypes)
local args = [symbol("a", n) for n in 1:length(argtypes.args)]
quote
$(esc(fnc))($(args...)) = ccall(($(string(fnc)), $(Expr(:quote, lib))), $restype, $argtypes, $(args...))
end
end

@m libcurl Cint curl_free (Ptr{Void},)
@m libcurl Ptr{Cchar} curl_getenv (Ptr{Cchar},)
@m libcurl Ptr{Cchar} curl_version ()

v = curl_getenv("TZ")
printf(v)
curl_free(v)
printf(curl_version())

98 名前:デフォルトの名無しさん mailto:sage [2016/07/22(金) 11:49:20.02 ID:f6dSUOKk.net]
>>9

macro w(lib, restype, fnc, argtypes)
local args = [symbol("a", n) for n in 1:length(argtypes.args)]
quote
$(esc(fnc))($(args...)) = ccall(($(string(fnc)), $(Expr(:quote, lib))), stdcall, $restype, $argtypes, $(args...))
end
end

@w user32 UInt32 MessageBoxA (UInt32, Ptr{Cchar}, Ptr{Cchar}, UInt32,)

MessageBoxA(C_NULL, "hage", "title", 1)



99 名前:デフォルトの名無しさん [2016/07/22(金) 13:42:42.08 ID:hQsD+JBa.net]
>>97-98
32bit 限定のコードを書くべきじゃないな

100 名前:デフォルトの名無しさん mailto:sage [2016/07/22(金) 15:31:36.78 ID:TotCshYe.net]
呼び出すライブラリの仕様は確定しているのだから実用上問題ないのでは?

101 名前:デフォルトの名無しさん mailto:sage [2016/07/23(土) 10:27:35.38 ID:6lYjBmg5.net]
ヒ素2さんかな(ヒソヒソ)

102 名前:デフォルトの名無しさん [2016/07/23(土) 11:05:54.45 ID:+Jc7SqHC.net]
x = UInt32(0x12345678)
a = pointer_to_array(convert(Ptr{UInt8}, pointer_from_objref(x)), 4)
a[2] = 51
println(@sprintf "%08X" x) # 0x12343378

103 名前:デフォルトの名無しさん [2016/07/23(土) 11:07:52.09 ID:+Jc7SqHC.net]
immutable TT
a::UInt16
b::UInt16
end
x = UInt32(0x12345678)
a = pointer_to_array(convert(Ptr{TT}, pointer_from_objref(x)), 1)
println(a) # [TT(0x5678,0x1234)]
a[].a = 0xaabb # ERROR: type TT is immutable

104 名前:デフォルトの名無しさん [2016/07/23(土) 11:12:28.69 ID:+Jc7SqHC.net]
type XX
a::UInt16
b::UInt16
end
x = UInt32(0x12345678)
# ↑ここまでは動く
a = pointer_to_array(convert(Ptr{XX}, pointer_from_objref(x)), 1)
# ↑インタプリタ環境だとこれを実行した時点で環境ごと落ちる (下へ行くケースあり)
println("reach here")
println(a)
# インタプリタの外から julia hoge.jl で実行したときは println(a) まで実行すると落ちる

105 名前:デフォルトの名無しさん [2016/07/23(土) 11:13:02.17 ID:+Jc7SqHC.net]
なぜでしょう?(unsafeなことしてるのは判ってるのですが・・・)

106 名前:デフォルトの名無しさん mailto:sage [2016/07/23(土) 12:22:24.60 ID:lFeXmVIf.net]
なぜって自分でbitstypeでもimmutableでもないって分かっている書きぶりじゃん
その上で聞いているならソース読め

107 名前:デフォルトの名無しさん mailto:sage [2016/07/23(土) 17:00:36.64 ID:6lYjBmg5.net]
へー Julia ってこういう壊れ方するのかー

julia> n = UInt32(3)
0x00000003

julia> p = Ptr{UInt32}(pointer_from_objref(n))
Ptr{UInt32} @0x06e474f0

julia> pointer_to_array(p, 1)
1-element Array{UInt32,1}:
0x00000003

julia> UInt32(3)
0x00000003

julia> pointer_to_array(p, 1)[] = 9
9

julia> UInt32(3)
0x00000009

108 名前:デフォルトの名無しさん mailto:sage [2016/07/23(土) 17:11:02.05 ID:6lYjBmg5.net]
こうなってるのかー
気付かんかったわー

julia> e = UInt32(11)
0x0000000b

julia> f = UInt32(11)
0x0000000b

julia> p = Ptr{UInt32}(pointer_from_objref(e))
Ptr{UInt32} @0x06e47770

julia> pointer_to_array(p, 1)
1-element Array{UInt32,1}:
0x0000000b

julia> UInt32(11)
0x0000000b

julia> pointer_to_array(p, 1)[] = 17
17

julia> UInt32(11)
0x00000011

julia> f
0x00000011



109 名前:デフォルトの名無しさん mailto:sage [2016/07/24(日) 09:37:49.42 ID:wdZTIji9.net]
インタラクティブシェルのヒストリーってどうやったら消せるん?

110 名前:デフォルトの名無しさん mailto:sage [2016/07/24(日) 09:48:14.01 ID:wdZTIji9.net]
~/.julia_history 消したら解決しました!






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<168KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef