LLVM で動く Julia のお勉強
Python に少し似てネイティブの速さで動く素敵な関数型言語
http://julialang.org/
http://junolab.org/
http://jupyter.org/
関連
Pythonista のための Julia 100 問 100 答
http://bicycle1885.hatenablog.com/entry/2014/12/23/170745
探検
Julia Juno Jupyter part1 [無断転載禁止]©2ch.net
1デフォルトの名無しさん
2016/02/12(金) 19:05:13.83ID:zhNvVfnf2016/05/31(火) 06:58:34.84ID:p6bvKsCE
こうして思うとmatlabの功罪は大きいな
76デフォルトの名無しさん
2016/05/31(火) 13:36:58.59ID:yIUZknFd 初心者に Fortran 教えるくらいなら Julia の方がマシ
77デフォルトの名無しさん
2016/05/31(火) 17:49:10.36ID:yIUZknFd78デフォルトの名無しさん
2016/06/02(木) 08:32:20.78ID:O7OWJX/G Jupyter Notebookで説明書きの通りのコードを入れても動きません。
terminals are unavailable と表示されてるのですが、これが動かない理由でしょうか。
terminals are unavailable と表示されてるのですが、これが動かない理由でしょうか。
2016/06/10(金) 16:36:24.64ID:8yNz9kCr
C資産との連携を強調してるけど
JuliaでC呼ぶのは苦痛でしかない
Cで書いた方がまし
JuliaでC呼ぶのは苦痛でしかない
Cで書いた方がまし
80デフォルトの名無しさん
2016/06/11(土) 15:43:11.34ID:iSPIsEmM 馬鹿には無理
2016/06/13(月) 14:44:15.88ID:zgrawcOE
本家も放置?
82デフォルトの名無しさん
2016/07/04(月) 12:10:46.03ID:bmDp8Deu 相変わらずだな
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ばっかり
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ばっかり
2016/07/05(火) 13:25:11.27ID:3gyxqmIo
Juliaってデータ分析というより数値計算じゃないの
全部インメモリの固定長配列にブチ込んでループぶん回す昔ながらのやつだよね
全部インメモリの固定長配列にブチ込んでループぶん回す昔ながらのやつだよね
2016/07/06(水) 12:37:52.43ID:T23wVNy/
別にデータ分析以外の数値計算が出来ないと言っている訳じゃないし
昔ながらのやつを現代的に書けるというだけでも有意義だろう
昔ながらのやつを現代的に書けるというだけでも有意義だろう
2016/07/06(水) 14:28:27.41ID:X105+0ra
2016/07/07(木) 11:04:48.07ID:bjxB4lA1
87デフォルトの名無しさん
2016/07/13(水) 17:16:46.46ID:Zm0ukFfg 文盲乙
A Summary of Features
https://www.youtube.com/watch?v=B9moDuSYzGo
Calling C Code
http://docs.julialang.org/en/release-0.4/manual/calling-c-and-fortran-code/
A Summary of Features
https://www.youtube.com/watch?v=B9moDuSYzGo
Calling C Code
http://docs.julialang.org/en/release-0.4/manual/calling-c-and-fortran-code/
88デフォルトの名無しさん
2016/07/15(金) 17:01:44.97ID:8P+uiz2j 誤解されてるようなので
>実際コード書いてても Python や C++ と比べて julia のコードって汚いんだよな
特定の条件がそろったときだけど
綺麗に描けることもある
>実際コード書いてても Python や C++ と比べて julia のコードって汚いんだよな
特定の条件がそろったときだけど
綺麗に描けることもある
2016/07/15(金) 22:38:04.14ID:3IYjBgbR
誤爆か
言語内DSLを別言語とみなすなら
C++で綺麗に書けるものがjuliaで書くと汚いってことは考えにくいんだが?
C++は数値を表す抽象型が標準にないのが致命的
そのくせ最近までサイズ固定の整数型がなかった
pythonについてはラムダ式が好きになれない(汚いとは別だが)
まぁjuliaに求めるものは綺麗さじゃなく実用性なんだ
おっぱい的な意味で
言語内DSLを別言語とみなすなら
C++で綺麗に書けるものがjuliaで書くと汚いってことは考えにくいんだが?
C++は数値を表す抽象型が標準にないのが致命的
そのくせ最近までサイズ固定の整数型がなかった
pythonについてはラムダ式が好きになれない(汚いとは別だが)
まぁjuliaに求めるものは綺麗さじゃなく実用性なんだ
おっぱい的な意味で
90デフォルトの名無しさん
2016/07/18(月) 12:18:17.33ID:DeXLreOM やっと気付いた
漏れはきっと end が嫌いなんだ
漏れはきっと end が嫌いなんだ
91デフォルトの名無しさん
2016/07/19(火) 12:43:59.43ID:3sf6xm4M 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
ワロス
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
ワロス
2016/07/20(水) 12:33:08.99ID:IKGpFUMW
笑いどころがわからない
配列用でないreinterpretはconvertと違って慎重に使うべきもの
julia> reinterpret(Bool, 256)
false
これは気持ち悪い
……と開発者も思ったらしくv0.5ではエラーになる見込み
配列用でないreinterpretはconvertと違って慎重に使うべきもの
julia> reinterpret(Bool, 256)
false
これは気持ち悪い
……と開発者も思ったらしくv0.5ではエラーになる見込み
2016/07/20(水) 21:10:41.79ID:AXsJLLhK
間にscheme入ってるならpythonに近い文法に変換するのも簡単に出来るのでは?
2016/07/20(水) 22:23:38.39ID:IKGpFUMW
pythonに近い文法を求めているならpython使えばいいんでは?
てかschemeに何の関係が?
てかschemeに何の関係が?
95デフォルトの名無しさん
2016/07/21(木) 18:47:37.68ID:Vj/xPVWN S式でなんでもできるのは面白いな
2016/07/21(木) 18:53:51.10ID:IyjPITzN
マクロで真っ黒
2016/07/22(金) 11:45:49.87ID:f6dSUOKk
>>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())
定義は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())
2016/07/22(金) 11:49:20.02ID:f6dSUOKk
>>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)
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.08ID:hQsD+JBa >>97-98
32bit 限定のコードを書くべきじゃないな
32bit 限定のコードを書くべきじゃないな
100デフォルトの名無しさん
2016/07/22(金) 15:31:36.78ID:TotCshYe 呼び出すライブラリの仕様は確定しているのだから実用上問題ないのでは?
101デフォルトの名無しさん
2016/07/23(土) 10:27:35.38ID:6lYjBmg5 ヒ素2さんかな(ヒソヒソ)
102デフォルトの名無しさん
2016/07/23(土) 11:05:54.45ID:+Jc7SqHC x = UInt32(0x12345678)
a = pointer_to_array(convert(Ptr{UInt8}, pointer_from_objref(x)), 4)
a[2] = 51
println(@sprintf "%08X" x) # 0x12343378
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.09ID:+Jc7SqHC 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
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.69ID:+Jc7SqHC 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) まで実行すると落ちる
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.17ID:+Jc7SqHC なぜでしょう?(unsafeなことしてるのは判ってるのですが・・・)
106デフォルトの名無しさん
2016/07/23(土) 12:22:24.60ID:lFeXmVIf なぜって自分でbitstypeでもimmutableでもないって分かっている書きぶりじゃん
その上で聞いているならソース読め
その上で聞いているならソース読め
107デフォルトの名無しさん
2016/07/23(土) 17:00:36.64ID:6lYjBmg5 へー 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
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デフォルトの名無しさん
2016/07/23(土) 17:11:02.05ID:6lYjBmg5 こうなってるのかー
気付かんかったわー
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
気付かんかったわー
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デフォルトの名無しさん
2016/07/24(日) 09:37:49.42ID:wdZTIji9 インタラクティブシェルのヒストリーってどうやったら消せるん?
110デフォルトの名無しさん
2016/07/24(日) 09:48:14.01ID:wdZTIji9 ~/.julia_history 消したら解決しました!
111デフォルトの名無しさん
2016/07/25(月) 18:13:55.98ID:r9xhFlm6 Cのunionと同じような機能ってreinterpret以外にないの?
112デフォルトの名無しさん
2016/07/26(火) 10:16:34.91ID:oKnTJYes transpose と ctranspose って何が違うん?
113デフォルトの名無しさん
2016/07/26(火) 10:29:26.50ID:As2nHGxN >>112
cはcomplex(複素数)のconjugate
cはcomplex(複素数)のconjugate
114デフォルトの名無しさん
2016/07/27(水) 09:34:21.46ID:nl1cCFz0 >>107-108
julia> 100
100
julia> 100 - 23
77
julia> 100 + 23
123
julia> pointer_to_array(Ptr{Int}(pointer_from_objref(100)), 1)[] = 119
119
julia> 100
119
julia> 100 - 19
119 # ← ここだけ納得いかない
julia> 100 + 19
138
julia> 100
100
julia> 100 - 23
77
julia> 100 + 23
123
julia> pointer_to_array(Ptr{Int}(pointer_from_objref(100)), 1)[] = 119
119
julia> 100
119
julia> 100 - 19
119 # ← ここだけ納得いかない
julia> 100 + 19
138
115デフォルトの名無しさん
2016/07/27(水) 22:18:04.56ID:vxMObH7b 納得いかないのが納得いかない
"100" - 19
→ 119 - 19
→"100"
→ 119
"100" - 19
→ 119 - 19
→"100"
→ 119
116デフォルトの名無しさん
2016/07/28(木) 19:00:25.38ID:O8Vfrh0P なるほど!
目から鱗でした
目から鱗でした
117デフォルトの名無しさん
2016/07/31(日) 11:27:08.15ID:DMqYYSfk llvm使いたくない。gccではビルドできないの?
118デフォルトの名無しさん
2016/08/01(月) 12:23:48.40ID:6PNy08If C++AMPもそうだったんだけど
llvmがバージョンアップするとC++AMPの仕様も変わったりして
誰も安定してC++AMPを利用できなったので
C++AMPは消えたと思う
juliaがllvm使ってるのは嫌な予感しかしない
llvmがバージョンアップするとC++AMPの仕様も変わったりして
誰も安定してC++AMPを利用できなったので
C++AMPは消えたと思う
juliaがllvm使ってるのは嫌な予感しかしない
119デフォルトの名無しさん
2016/08/01(月) 15:22:44.54ID:JXVULl1x コンパイル遅すぎ
120デフォルトの名無しさん
2016/08/01(月) 16:51:02.97ID:8rwcghCB 寧ろgccの方が先行き不安なような
121デフォルトの名無しさん
2016/08/01(月) 17:20:22.43ID:6PNy08If llvmは安定して使うことよりもgccの妨害が目的っぽい部分があって
利用者は軽視(gccの足引っ張りが重要)
そんな印象がある
利用者は軽視(gccの足引っ張りが重要)
そんな印象がある
122デフォルトの名無しさん
2016/08/01(月) 17:35:53.63ID:8rwcghCB うわぁ・・・
123デフォルトの名無しさん
2016/08/01(月) 18:14:22.64ID:JXVULl1x M9誤報記念
124デフォルトの名無しさん
2016/08/01(月) 19:39:59.72ID:3q+qs35i >>118
C++AMP ってマイクロソフト主導だったんじゃないのん?
C++AMP ってマイクロソフト主導だったんじゃないのん?
125デフォルトの名無しさん
2016/08/02(火) 10:29:05.14ID:JwtZ9iAm >>111
manual/calling-c-and-fortran-code/
Struct Type correspondences
Packed structs and union declarations are not supported by Julia.
You can get a near approximation of a union if you know, a priori,
the field that will have the greatest size (potentially including padding).
When translating your fields to Julia, declare the Julia field to be only of that type.
...
In the future, some of these restrictions may be reduced or eliminated.
manual/calling-c-and-fortran-code/
Struct Type correspondences
Packed structs and union declarations are not supported by Julia.
You can get a near approximation of a union if you know, a priori,
the field that will have the greatest size (potentially including padding).
When translating your fields to Julia, declare the Julia field to be only of that type.
...
In the future, some of these restrictions may be reduced or eliminated.
126デフォルトの名無しさん
2016/08/04(木) 11:46:11.27ID:8anV95gh reinterpretとBase.boxとどっち使うのが良いんですか?
127デフォルトの名無しさん
2016/08/05(金) 10:14:39.63ID:LJe/qM3f >>79
それな
それな
128デフォルトの名無しさん
2016/08/05(金) 11:34:17.96ID:9LvdmO9z なぜ僕らはJuliaを創ったか
http://marui.hatenablog.com/entry/20120221/1329823079
ゆるいライセンスのオープンソースで、Cの速度とRubyの動的さが欲しい。
Lispのような真のマクロが使える同図象性のある言語で、
Matlabのように分かりやすい数学の記述をしたい。
Pythonのように汎用的に使いたいし、Rの統計処理、
Perlの文字列処理、Matlabの線形代数計算も要る。
シェルのように簡単にいくつかのパーツをつなぎ合わせたい。
チョー簡単に習えて、超上級ハッカーも満足する言語。
インタラクティブに使えて、かつコンパイルできる言語が欲しい。
(そういえば、C言語の実行速度が必要だってのは言ったっけ?)
イイね!
http://marui.hatenablog.com/entry/20120221/1329823079
ゆるいライセンスのオープンソースで、Cの速度とRubyの動的さが欲しい。
Lispのような真のマクロが使える同図象性のある言語で、
Matlabのように分かりやすい数学の記述をしたい。
Pythonのように汎用的に使いたいし、Rの統計処理、
Perlの文字列処理、Matlabの線形代数計算も要る。
シェルのように簡単にいくつかのパーツをつなぎ合わせたい。
チョー簡単に習えて、超上級ハッカーも満足する言語。
インタラクティブに使えて、かつコンパイルできる言語が欲しい。
(そういえば、C言語の実行速度が必要だってのは言ったっけ?)
イイね!
129デフォルトの名無しさん
2016/08/12(金) 14:09:58.96ID:5sOoPQZ5 マクロを入れ子で使ってるときの評価順が良く判らんな
130デフォルトの名無しさん
2016/08/19(金) 20:54:44.94ID:/WxFAz6S Juliaの継承システムってなんでgoみたいなシステムにしなかったんだろうな
131デフォルトの名無しさん
2016/08/20(土) 14:07:49.70ID:cg7hw3nY goはgoでアグレッシブすぎる気がするけど
C++とかJavaとか
結果的に抽象クラスとインターフェイスの関係が微妙になってしまったことを考えれば
Juliaの型システムは明確で合理的だと思う
あと多重ディスパッチが特徴に挙げられるくらいなので
ロジック・実装の散逸を防ぐ思想があるんだろう
具象型が継承不可な点は最適化の面でも有利に働くはず
C++とかJavaとか
結果的に抽象クラスとインターフェイスの関係が微妙になってしまったことを考えれば
Juliaの型システムは明確で合理的だと思う
あと多重ディスパッチが特徴に挙げられるくらいなので
ロジック・実装の散逸を防ぐ思想があるんだろう
具象型が継承不可な点は最適化の面でも有利に働くはず
132デフォルトの名無しさん
2016/08/20(土) 14:58:26.80ID:OZEoChm6 コンストラクタがきもい
133デフォルトの名無しさん
2016/08/24(水) 18:07:53.88ID:Ku8YOB4B おまえそんなんばっか
134デフォルトの名無しさん
2016/08/24(水) 20:40:56.81ID:jKhJVkcK @timeとか@showとか便利すぎて逆になんでpythonにはないのかと悲しくなるレベル
135デフォルトの名無しさん
2016/09/01(木) 20:24:06.33ID:YPWf/agv 一切カプセル化出来ないから無能を含む大規模プロジェクトには使えないな
136デフォルトの名無しさん
2016/09/02(金) 07:56:04.86ID:epTjFeL3 intをdepricated にして代わりに l->[parse(Int, s) for s=l] を使えって言ってくるのはマジで基地外じみてる
137デフォルトの名無しさん
2016/09/02(金) 12:51:45.65ID:W3BuWeJb 新言語のフリしたFORTRANだよなこれ
138デフォルトの名無しさん
2016/09/02(金) 15:34:46.39ID:tIJhbCeG 3次元の配列を効率よく初期化するにはどうすれば良いでしょうか?
139デフォルトの名無しさん
2016/09/02(金) 20:42:33.40ID:ZxHIRzh+ [f(I,j,k) for i=1:n, j=1:m, l=1:o]
Pythonとは訳が違う便利さ
Pythonとは訳が違う便利さ
140デフォルトの名無しさん
2016/09/03(土) 13:20:01.65ID:rRZKSjjx >>136
じゃあ何が正解だというの?
じゃあ何が正解だというの?
141デフォルトの名無しさん
2016/09/03(土) 13:59:08.29ID:w8mOGCX1 添え字が 0 から始められるように設定変更ってどうするんだっけ
142デフォルトの名無しさん
2016/09/03(土) 22:13:37.19ID:b+GHqttd >>140
安価ミスか?何を聞かれてるのかわからん
安価ミスか?何を聞かれてるのかわからん
143デフォルトの名無しさん
2016/09/13(火) 10:04:52.46ID:igQxNPoH144デフォルトの名無しさん
2016/09/13(火) 20:37:02.00ID:roYGy53F145デフォルトの名無しさん
2016/09/14(水) 13:14:08.84ID:RIACRRsP parseint なんで死んでもうたん
146デフォルトの名無しさん
2016/09/19(月) 18:47:11.41ID:4df2MR9Z 君死に勿給ふこと
147デフォルトの名無しさん
2016/09/20(火) 11:35:12.98ID:fyTX+ASc IPython - 対話的にPythonプログラミングができるコマンドラインツールです。とはいえ初心者だと何をどうしていいかわからないかも
Jupyter Notebook - IPythonをブラウザ上で実行するツールです(全然それだけじゃないけど) 。とっかかりとして一番のおすすめ。
様々なサンプルがこのツールのNotebook形式で配布されており、学習効率もいいです。
とりあえずVisual StudioとPycharmがIDEで, 前者はpythonに限定しないIDE,
後者はpython用のIDEですね. ※Visual Studioはpythonに対応してるとの事です.
アナコンダはパッケージのインストーラーで, IpythonとJupyterも一緒に
ダウンロードされますよね.
JupyterもIDEではないのですか?
IDEの定義によるんだろうけど
JupyterはIDEの条件を満たしてはなさそう
ノート機能が付いたEditorに近いのかな
私のとらえ方ではIDEは3ペイン・2ペイン構成のデスクトップアプリで
IPythonをブラウザ上で(シングルペインではあるが)IDE「的」に使えるのがJupyterですね
Anacondaにはpython用IDEデスクトップアプリのSpyderというものも入ってますので
インストール後両方起動されると、おおよその雰囲気の違いがわかると思います
Jupyter-IPython は Mathematica を目指してる。
Kernel + Notebook の構造。
IDE とはまた違うかな。
Jupyter Notebook - IPythonをブラウザ上で実行するツールです(全然それだけじゃないけど) 。とっかかりとして一番のおすすめ。
様々なサンプルがこのツールのNotebook形式で配布されており、学習効率もいいです。
とりあえずVisual StudioとPycharmがIDEで, 前者はpythonに限定しないIDE,
後者はpython用のIDEですね. ※Visual Studioはpythonに対応してるとの事です.
アナコンダはパッケージのインストーラーで, IpythonとJupyterも一緒に
ダウンロードされますよね.
JupyterもIDEではないのですか?
IDEの定義によるんだろうけど
JupyterはIDEの条件を満たしてはなさそう
ノート機能が付いたEditorに近いのかな
私のとらえ方ではIDEは3ペイン・2ペイン構成のデスクトップアプリで
IPythonをブラウザ上で(シングルペインではあるが)IDE「的」に使えるのがJupyterですね
Anacondaにはpython用IDEデスクトップアプリのSpyderというものも入ってますので
インストール後両方起動されると、おおよその雰囲気の違いがわかると思います
Jupyter-IPython は Mathematica を目指してる。
Kernel + Notebook の構造。
IDE とはまた違うかな。
148デフォルトの名無しさん
2016/09/20(火) 16:45:47.03ID:OOeys4LV 俺定義とかどうでもいい
149デフォルトの名無しさん
2016/09/20(火) 18:24:31.81ID:9mjD9CdW 0.5正式版出た?
150デフォルトの名無しさん
2016/09/23(金) 22:24:53.87ID:kOClgCb6 ジェネレータ式はトリッキーなマクロが要らなくなっていいな
PROGRAM_FILEはやっとか
PROGRAM_FILEはやっとか
151デフォルトの名無しさん
2016/09/23(金) 23:25:21.12ID:88XXmyIP この調子で引数に_を使った時に部分適用になるあれもこないかな
152デフォルトの名無しさん
2016/09/27(火) 10:01:40.02ID:pOx3jF2U Julia0.5正式に出たっていうのになんだこの話題なってなさは
153デフォルトの名無しさん
2016/10/20(木) 11:50:05.14ID:lWKh0RTB FORTRAN2016
154デフォルトの名無しさん
2016/11/03(木) 03:38:05.60ID:iYejUQc8 煽り抜きでダメだなもう
ガバナンスも利いてないしめちゃくちゃ
文法も思想もとっちらかったクソ言語に成り果ててる
ガバナンスも利いてないしめちゃくちゃ
文法も思想もとっちらかったクソ言語に成り果ててる
155デフォルトの名無しさん
2016/11/03(木) 06:39:55.89ID:yjP+XKqq もうガバガバなんす
156デフォルトの名無しさん
2016/11/03(木) 08:35:32.33ID:Qx64j3d5 >>154
ほんまこれ。迷走しすぎて言語仕様めちゃくちゃ
ほんまこれ。迷走しすぎて言語仕様めちゃくちゃ
157デフォルトの名無しさん
2016/11/03(木) 10:49:45.39ID:6FeMk1RE どこで間違ったし
158デフォルトの名無しさん
2016/11/10(木) 00:39:14.58ID:il4z8U8D pythonでよくね
159デフォルトの名無しさん
2016/12/02(金) 20:17:55.46ID:4z6Tns60 type Pos
x::Float64
y::Float64
end
Base.+(a::Pos, b::Pos) = Pos(a.x + b.x, a.y + b.y)
ってやると(a::Pos, b::Pos) is not a valid function
ってエラー吐くのですが、オリジナルの型用の演算子定義するにはどうすればいいのでしょうか?
x::Float64
y::Float64
end
Base.+(a::Pos, b::Pos) = Pos(a.x + b.x, a.y + b.y)
ってやると(a::Pos, b::Pos) is not a valid function
ってエラー吐くのですが、オリジナルの型用の演算子定義するにはどうすればいいのでしょうか?
160デフォルトの名無しさん
2016/12/03(土) 14:42:15.35ID:iU+ignEA (+)(a::Pos, b::Pos) = Pos(a.x + b.x, a.y + b.y)
161デフォルトの名無しさん
2016/12/03(土) 14:45:29.61ID:iU+ignEA こっちか
(:(+))(a::Pos, b::Pos) = Pos(a.x + b.x, a.y + b.y)
(:(+))(a::Pos, b::Pos) = Pos(a.x + b.x, a.y + b.y)
162デフォルトの名無しさん
2016/12/03(土) 22:57:39.15ID:MCWCirTG163デフォルトの名無しさん
2016/12/04(日) 16:46:36.86ID:sRaGesqk import Base.+
.+(a::Pos, b::Pos) = Pos(a.x + b.x, a.y + b.y)
とか?
.+(a::Pos, b::Pos) = Pos(a.x + b.x, a.y + b.y)
とか?
164デフォルトの名無しさん
2016/12/04(日) 16:55:46.44ID:sRaGesqk すまん+の前のドット要らん
165デフォルトの名無しさん
2016/12/18(日) 17:43:44.11ID:ZqV+jY/A Tk.jl わろす
166デフォルトの名無しさん
2016/12/24(土) 06:10:21.30ID:WW/1/xEY 3ヶ月程前からPython+Numpy 覚えながら前から作ろうと思っていたプログラム書き始めていたのですが、
最近Juliaを知って日本語で書かれたドキュメント読み切って中身知ったら凄く綺麗で良い言語に見えてきて、
むしろPythonの方はダメな部分を補う為に無理やりNumpyをくっつけているようにすら見えてきたのですが、
その認識は間違ってないでしょうか?
書きかけのプログラムをPython+NumpyやめてJuliaを覚える方にシフトしようかある程度Pythonを覚えてきたこともあって悩んでいます。
最近Juliaを知って日本語で書かれたドキュメント読み切って中身知ったら凄く綺麗で良い言語に見えてきて、
むしろPythonの方はダメな部分を補う為に無理やりNumpyをくっつけているようにすら見えてきたのですが、
その認識は間違ってないでしょうか?
書きかけのプログラムをPython+NumpyやめてJuliaを覚える方にシフトしようかある程度Pythonを覚えてきたこともあって悩んでいます。
167デフォルトの名無しさん
2016/12/24(土) 12:34:17.22ID:p4lqfCaM めりくり
168デフォルトの名無しさん
2016/12/24(土) 15:53:34.28ID:8EM69YXY numpyで充分
169デフォルトの名無しさん
2016/12/26(月) 19:37:06.22ID:/4K9rjX9 Juliaは上手く統合されてると思うけど、まだ色々足りないでしょ
自分でバンバン書ける人ならともかく、覚え始めとかならPythonやっとけ
自分でバンバン書ける人ならともかく、覚え始めとかならPythonやっとけ
170デフォルトの名無しさん
2016/12/26(月) 20:42:06.86ID:aoxifvbm JuliaスレでJuliaをディスるな
171デフォルトの名無しさん
2016/12/27(火) 14:39:42.88ID:ov9/Tp6R disってるようには思わないな
正当な批判はちゃんと批判として受け入れるべき
正当な批判はちゃんと批判として受け入れるべき
172デフォルトの名無しさん
2016/12/27(火) 20:29:48.62ID:tyJ7Gcdt JuliaにはRを殺して欲しい
173デフォルトの名無しさん
2016/12/27(火) 20:54:54.62ID:6hdNCFW6 配列が線形代数向けに整備されてる言語ってJuliaとRくらいのもんか?
174デフォルトの名無しさん
2016/12/27(火) 21:07:35.36ID:tyJ7Gcdt J
175デフォルトの名無しさん
2016/12/27(火) 21:16:00.31ID:6hdNCFW6 Jはちょっと……
レスを投稿する
ニュース
- 高市首相答弁を“引き出した”立民・岡田克也氏が改めて説明「なぜ慎重な答弁をされなかったのか。非常に残念に思っている」 ★9 [ぐれ★]
- 【news23】小川彩佳アナ「ここまでの広がりになるということを、高市総理はどれだけ想像できていたんでしょうね」 日中問題特集で [冬月記者★]
- 【独占スクープ】元TOKIOの松岡昌宏がSTARTO社を“退所”へ「国分のコンプライアンス違反」問題をきっかけに決断、12月から単独で活動 [Ailuropoda melanoleuca★]
- 【野球】大谷翔平、佐々木朗希、山本由伸らがWBC辞退なら広がる不協和音… 『過去イチ盛り上がらない大会』になる可能性も★2 [冬月記者★]
- 「町中華」の“息切れ倒産”が増加 ブームにも支えられ職人技で踏ん張ってきたが… 大手チェーンは値上げでも絶好調 [ぐれ★]
- 【国際】ロシアはすでに戦争準備段階――ポーランド軍トップが警告 ★2 [ぐれ★]
- 高市早苗、約1ヶ月でドル円・10円円安を達成 [256556981]
- VIPでアズールレーン
- 「▇▇▇▇▇▇▇®」 ビゴーーーン
- 中国専門家の興梠一郎先生「実は中国が一番焦ってるのが総領事の暴言だ。中国は今かなり追い詰められている」 [904151406]
- 【悲報】グーグル、すべてを過去にするジェミニ3発表で株価最高値へ [733893279]
- するってぇと何かい?2週間前に安全を確認して輸入再開した海産物を食の安全のために輸入停止にしたってのかい?
