Twitter APIの仕様変更のため、「いいね」の新規取得を終了いたしました

黒木玄 Gen Kuroki

@genkuroki

  • いいね数 389,756/311,170
  • フォロー 995 フォロワー 14,556 ツイート 293,980
  • 現在地 (^-^)/
  • Web https://genkuroki.github.io/documents/
  • 自己紹介 私については https://twilog.org/genkuroki と https://genkuroki.github.io と https://github.com/genkuroki と https://github.com/genkuroki/public を見て下さい。
Favolog ホーム » @genkuroki » 2020年09月28日
並び順 : 新→古 | 古→新

2020年09月28日(月)

質問者2 @shinchanchi

20年9月28日

民主党政権下でも失業率は低下傾向でした。その要因は就業者数の減少と働くことを諦めた人の増加によるものです。
デフレ下で仕事が減って、仕事につけない若者よりも定収入がある支持者を向いていそうな方のご発言ですね。
@RyuichiYoneyama twitter.com/RyuichiYoneyam...

タグ:

posted at 23:44:47

Valentin Churavy @vchuravy

20年9月28日

Awesome work, by Thomas Faignaert & @maleadt based on #JuliaGPU the accelerated computing stack for #JuliaLang. High-performance generic GEMM, particularly cool is taking advantage of structure information like `Diagonal` to speed things up!

juliagpu.org/2020-09-28-gem...

タグ: JuliaGPU JuliaLang

posted at 23:27:42

ヘチマレモン @hetima_lemon

20年9月28日

Plots.jl使うときいつも悩むからゴロピカリさんのPlotsGallery.jlはとても助かる。ある程度Juliaに慣れた後はパッケージの使い方に悩み続けてる。この前もSQLite.jlの使い方に悩んだし。

タグ:

posted at 23:22:06

TukamotoRyuzo @waruo_t

20年9月28日

ゼロから自己対戦のみで学習させたぷよAI、こんな試合をするようになった。催促、潰し、対応みたいな、人間の上級者みたいなやりとりしてて面白い。 pic.twitter.com/klJuY246kY

タグ:

posted at 23:20:20

KTYD @KTYDRCB

20年9月28日

うっすら研究室でJulia認知されてきた。
あとは使って比較してくれれば自ずと…

タグ:

posted at 23:15:09

Im(Nyarn)@linuxナニモワカ @Imaginary_Nyarn

20年9月28日

Julia on Jupyter Notebookでレポート書いたけど,自分の環境ではVSCodeでなぜか開けなくてTabNineとかの補助なしできつかった

タグ:

posted at 23:14:26

まついしょうた @1027stesc

20年9月28日

やはり「=は計算で使うもの」という認識だったそう。
この半年でだいぶ「=の意味」案件に出くわしている。もっと早くその固定観念を取り払えていれば…。

タグ:

posted at 23:03:53

まついしょうた @1027stesc

20年9月28日

「=の意味」案件が今日も。「変化の割合が7」と先に与えられ、aの値をーの問題。変化の割合をaで表せても、最後の一手が出ずに止まってしまう。
「『違う表し方だが同じもの』を=で結び、方程式を立てるのはよくやるよ。」と声をかけると「=でそんなことしていいんですね。」と、やっと手が動いた。 twitter.com/1027stesc/stat...

タグ:

posted at 23:01:28

まついしょうた @1027stesc

20年9月28日

まあ、なんつうか少人数学級になってより一層超算数を叩き込まれても困るのだけどね。
1桁人数の少人数学年で育ってきた中学生が目の前にいてね。
だいぶ染まってきたみたいでね。

タグ:

posted at 22:42:42

Yohsuke Watanabe @YohsukeW

20年9月28日

頭はいいけど大学数学で挫折する人には共通点があって、それは考える忍耐力が伴ってない事。高校までの数学と違い大学数学は数学自体が難しい。受験教育に慣れすぎると早く解けるのが当たり前になる、だから即答できないと精神的不安に陥る、考える忍耐力がないと大学レベルの数学するのは難しいですね

タグ:

posted at 22:20:24

Bruce Tate: grox.io @redrapids

20年9月28日

I love pipes:

julia> d = Dict(
:india => 145400,
:panama => 15598,
:usa => 750,
:philippines => 156824)

julia> d |> values |> collect |> minimum
750

more ->

タグ:

posted at 22:16:48

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 インタラクティブなコマンド実行で

f() = sum(1:10^8)

がまるで

f() = 5000000050000000

であるかのようにコンパイルされることを見せることもできます。

Juliaでは函数は実行時に最適化されたネイティブコードに即時コンパイルされる。 pic.twitter.com/1rV49ZMZD7

タグ: Julia言語

posted at 22:11:39

Shuhei Kadowaki @kdwkshh

20年9月28日

@mrkn めちゃ励みになります!

タグ:

posted at 21:59:47

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 文字列としてのプログラムのコードをパースした結果を、ユーザーが自由に見て書き換えて実行できるようになっていた方が、プログラムが実行される仕組みについて教え易いと思う。

タグ: Julia言語

posted at 21:57:17

のま @nomasasayo

20年9月28日

juliaのパッケージインストールがうまくいかん

タグ:

posted at 21:56:00

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語

* Juliaのmoduleは名前空間を分離しているだけ。

* Juliaでのディスパッチは引数の型の組み合わせを見て決めているだけ。

* パイプ x |> f は単なる f(x) の別の書き方。

他にも「~だけ」の機能がいっぱいある。

面倒事はマクロに任せていることが多い。

タグ: Julia言語

posted at 21:52:40

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 のinclude("foo.jl")はTeXの\input{foo.tex}と同じ。

単にファイルの内容を読み込んで評価するだけ。

Juliaにはシンプルに「〇〇するだけ」のスタイルの機能が多い。そういう「〇〇するだけ」の機能の組み合わせで何でもできるようにしている。

部品は単純な方が分かり易い。 twitter.com/akhdhys/status... pic.twitter.com/Y7SSEDWFVT

タグ: Julia言語

posted at 21:44:28

dc1394 @dc1394

20年9月28日

C++の数値積分ライブラリをALGLIBからGSLに変えたら、変える前と後では16倍くらい速くなりましたが、それでもまだJuliaの方が16倍くらい速いですね…。具体的には、
C++: 0.212892(秒)
Julia: 0.013464(秒)
です。後、GSLは精度が悪く、積分結果が
1.00000000008663
となります(Juliaは1になる)

タグ:

posted at 21:44:16

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 文字列のパースは

expr2 = Meta.parse("2x - 1")

このexpr2は、上で

expr = :(2x + 1)
expr.args[1] = :-

として作ったexprにも等しいし、

expr3 = Expr(:call, :-, Expr(:call, :^, :x, 2), 1)

とも等しい。lisp風に書けば

(call - (call ^ x 2) 1)

タグ: Julia言語

posted at 21:31:32

PAW @akhdhys

20年9月28日

Pythonのimportに慣れた身からするとJuliaのincludeはちょっと戸惑うな
C++のincludeに近い気もするけどなんか違うかもしれん

タグ:

posted at 21:31:15

みょうが @mrkn

20年9月28日

@kdwkshh やった!

タグ:

posted at 21:11:11

積分定数 @sekibunnteisuu

20年9月28日

そこだけ直せばよい と言っている人がいるのか? twitter.com/halt_haru/stat...

タグ:

posted at 21:04:11

むううみん @muuumin20

20年9月28日

@genkuroki それは素晴らしいですね。パッケージマネージャーって、初心者には、入れたら入れたで、何だかよくわからない物を入れちまったと不安になるし、入れなかったら入れなかったで、今後大丈夫なのか不安になりますからね。

タグ:

posted at 21:01:03

Yuki Nagai @cometscome_phys

20年9月28日

@physics303 @HShinaoka @HW_a_pythonista こちらでMacBookProでJuliaでやってみましたが、N=1000で0.01秒くらいでした。 pic.twitter.com/OsU65aTd5u

タグ:

posted at 20:57:19

黒木玄 Gen Kuroki @genkuroki

20年9月28日

@muuumin20 #Julia言語 パッケージマネージャーは

julia> ]
pkg> add QuadGK

のようにして使えるので、パッケージマネージャーはないのではなく、juliaコマンドの機能の一部。

pkg> activate .

とかもよく使う。

タグ: Julia言語

posted at 20:55:48

ごまふあざらし(GomahuAzaras @MathSorcerer

20年9月28日

2次元のヒストグラムの3Dプロットは人類には早すぎた

タグ:

posted at 20:40:55

非公開

タグ:

posted at xx:xx:xx

ごまふあざらし(GomahuAzaras @MathSorcerer

20年9月28日

元ネタ
ランダム行列の数理と科学

www.morikita.co.jp/books/book/2733

タグ:

posted at 20:32:29

ごまふあざらし(GomahuAzaras @MathSorcerer

20年9月28日

特定の条件下で2x2の対象なランダム行列の固有値の分布を描画

#Julia言語

gist.github.com/terasakisatosh... pic.twitter.com/iNhZFu1zsn

タグ: Julia言語

posted at 20:32:28

Shuhei Kadowaki @kdwkshh

20年9月28日

@mrkn さんがサポートしてくれました :) ありがとうございます🙇‍♂️🙇‍♂️🙇‍♂️
とても嬉しかったので勢い余ってちょっと加筆しました(コードが型不安定な場合のコード生成について)。
変更点だけ見たい方はこのcommitでサクッと確認できます:
github.com/aviatesk/aviat...

#julialang #zenn twitter.com/kdwkshh/status...

タグ: julialang zenn

posted at 20:26:07

むううみん @muuumin20

20年9月28日

私はそれに加えて環境構築の容易さも挙げたい。Juliaの環境構築はインストーラを押すだけなのでとても簡単。初心者にとって環境構築は最初の関門で、ここでつまづくと簡単に嫌になってしまう。 twitter.com/genkuroki/stat...

タグ:

posted at 20:25:55

黒木玄 Gen Kuroki @genkuroki

20年9月28日

@sekibunnteisuu @musicisthebest_ @UFOprofessor @GreatDemon1701 @temmusu_n 公式の暗記に走らせることが悪なのは、数学におけるあらゆる対象は自分自身がコントロールする対象に過ぎず、「天下って来るものではない」という大事なことが蔑ろにされるから。

「全部自分でコントロールできること」が大事。

たとえ世界中を敵に回しても「俺が正しい」と言えることが大事。

タグ:

posted at 20:02:03

黒木玄 Gen Kuroki @genkuroki

20年9月28日

@sekibunnteisuu @musicisthebest_ @UFOprofessor @GreatDemon1701 @temmusu_n #数楽

余弦定理も三角函数の加法定理も導出はシンプルです。

難問ではない中学校数学レベル。

添付画像は加法定理の場合。

試験のときに緊張して頭がおかしくなって公式の細部に自信が持てなくなっても、十分に理解すれば大丈夫になるはず。

「緊張してど忘れしても大丈夫」も大事。 twitter.com/ufoprofessor/s... pic.twitter.com/R2HQJOb6jC

タグ: 数楽

posted at 19:58:36

積分定数 @sekibunnteisuu

20年9月28日

@musicisthebest_ @UFOprofessor @GreatDemon1701 @temmusu_n 乗せるだけじゃなく、囲みや太文字で「覚えなさい」と言わんばかりですよね。しかも「積の法則」みたいなどーーーーーでもいい用語も載せていて太字だったりする。

タグ:

posted at 19:39:08

k @musicisthebest_

20年9月28日

@UFOprofessor @GreatDemon1701 @temmusu_n @sekibunnteisuu 想像ですが、書き手側に前例踏襲主義と、「他が載せてるのにうちが載せてないのはまずい」という横並び主義があるんじゃないですかね。
生徒側が「何で載ってない」と文句言ってくることはありそうで、だから書き手が「しゃーなしに載せるけどこんなんわざわざ覚えるな」と注釈つけると良いのでは。

タグ:

posted at 19:36:32

積分定数 @sekibunnteisuu

20年9月28日

@zatukun @musicisthebest_ だとしたら、ちょっと・・・

タグ:

posted at 19:31:54

UFO教授 (藤木文彦 Fumihiko @UFOprofessor

20年9月28日

@GreatDemon1701 @musicisthebest_ @temmusu_n @sekibunnteisuu 最初の数個を覚えたら、ーθとか、θ/2とか、図を書けば分かるし、その方が記憶違いによる間違いが無いだけ確実だから、暗記はやめろ、っていうんですがね。教科書、なんとかならないか。この公式集には墨を塗りたいところですね。
数学の成績の善し悪しは、図を書いて考えられるか否かにかかっている

タグ:

posted at 19:23:44

Baatarism/ちゃんぷるー @baatarism

20年9月28日

無法地帯と化すハイチ 警官が暴徒化する理由とは? www.newsweekjapan.jp/stories/world/...

タグ:

posted at 19:19:59

あ〜る菊池誠(反緊縮)公式 @kikumaco

20年9月28日

熱平衡状態での微視的状態の「典型性」を議論している教科書はおそらく田崎本以前には(少なくとも日本語では)ないと思うし、今も他にあるかどうか知らない。僕の講義ノートには書いてある。
計算機で熱平衡状態を作り出していた計算統計力学研究者は漠然とでもそれを知っていたはずで、僕は知ってた

タグ:

posted at 19:17:00

でえもん @GreatDemon1701

20年9月28日

@UFOprofessor @musicisthebest_ @temmusu_n @sekibunnteisuu 「公式」が出てくるたびに、こんなものは覚えるモノではないと言うのですがね。
三角関数のところで出てくる団体さんには本当に困りますよね。丸暗記しようとするのを止められません。力不足です。いくら仕組みを説明しても「あいつの話は長い」で授業評価はだだ下がりです。

タグ:

posted at 19:08:50

黒木玄 Gen Kuroki @genkuroki

20年9月28日

@GreatDemon1701 @vecchio_ciao 【スタートの次がアンカーとか?】

紙バトン長過ぎ!(笑)

タグ:

posted at 19:07:26

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 私がJuliaはコンピューターの教育用に非常に適しているのではないかと主張している理由の1つは

 インタラクティブに使えて文法が易しいこと



 文字列をパースしてから
 ネィティブコードにコンパイルするまでの様子
 が全部見えること

が同居しているからです。

タグ: Julia言語

posted at 19:06:10

UFO教授 (藤木文彦 Fumihiko @UFOprofessor

20年9月28日

@GreatDemon1701 @musicisthebest_ @temmusu_n @sekibunnteisuu 確か教科書にも、偶数の場合の式が書いてあって、子供達は両方覚えなければならない強迫観念にとらわれてしまっていた様に思います。
偶数の場合なんか、覚える必要が無い、って教えてますが、なんで教科書は他の場合も含め、必要ない公式を覚えなければならない様に編集されているんでしょうかね?

タグ:

posted at 19:02:59

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語

expr = :(x^2 + 1)



expr = :(x^2 - 1)

に変更するには

expr.args[1] = :-

とします。exprの実行は eval(expr) で可能。

こんな感じでJuliaではJuliaのプログラムを普通にデータとして扱い、実行することができます。 pic.twitter.com/BbQJ7HSE6v

タグ: Julia言語

posted at 19:02:49

でえもん @GreatDemon1701

20年9月28日

@vecchio_ciao @genkuroki スタートの次がアンカーとか?

タグ:

posted at 19:01:31

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語

文字列 → AST → ~ → llvm → native

の途中の様子を全部確認できます。

文字列→ASTの変換は

:(文字列)

です(例が添付画像にある)。:(x^2+1)の表示を見ても中身が見えないので、dump や Meta. show_sexpr で見ています。

個人的にはS式による表示Meta. show_sexprがおすすめ。 pic.twitter.com/uAPro8NlFc

タグ: Julia言語

posted at 18:57:34

やねうら王 @yaneuraou

20年9月28日

将棋のブログにコメントするときに出てきたら嫌なヤツ pic.twitter.com/dIiDZOqp6h

タグ:

posted at 18:57:14

でえもん @GreatDemon1701

20年9月28日

かつての同僚(某大学のSF研出身)で「昔の21世紀」と表現する人がいた。大阪万博の頃、絵や物語で想像されていた未来像。透明なチューブの中を走る列車や空飛ぶ車など。 twitter.com/nishin_8/statu...

タグ:

posted at 18:37:44

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 あと、コンパイラの勉強のために、Juliaが自分が書いた短いコードをどのようにコンパイルしているかも見たい人が多いと思う。LLVMとネイティブコードへのコンパイル結果を見たければ

@ code_llvm
@ code_native

を使う。 pic.twitter.com/Q0GXcheH2Y

タグ: Julia言語

posted at 18:33:14

Miura Hideki @miura1729

20年9月28日

おそらく、ネイティブに変換するのは悪手でより軽いコンパイルでメモリアクセスを減らす工夫が出来るVMってのが答えという気がしている。

タグ:

posted at 18:29:35

Miura Hideki @miura1729

20年9月28日

mmcの次のプロジェクトとして考えているのは、とにかくRailsを速くするだけというもの。その為なら数値計算とかが遅くなってもかまわないと超割り切った設計をする。一番の問題が私がRailsを使ったこと無いこと...

タグ:

posted at 18:26:56

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 JuliaではREPLやJupyterでの値の表示の仕方を Base. show(io::IO, x::YourType) を定義することによって自由に設定できる。(これは自前で型を定義するようになると非常に便利)

だから、値の表示を見ても実際の中身がどうなっているかはわからない。

中身を見たければ dump(x) を使う。

タグ: Julia言語

posted at 18:25:48

天むす名古屋 Temmus @temmusu_n

20年9月28日

@golgo_sardine 饅頭より、塩野直道全集ですよ。だれか出して!!!

タグ:

posted at 18:24:48

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 そうやって、型の伝搬について地道に確認して行けば、Juliaが「整数計算でオーバーフローを防ぐために、自動的に扱っている整数値の型を変更する」というようなことを__しない__ことも分かるし、しない理由も少しずつわかって来ると思う。

タグ: Julia言語

posted at 18:22:38

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 @ time や @ code_warntype を使えという話は公式ドキュメントのPerformance Tipsにしっかり書いてある。必読。

docs.julialang.org/en/v1/manual/p...

docs.julialang.org/en/v1/manual/p...

Juliaが何をやっているかを「見る」方法を知っておくことはとても大事。

なんでもdump(x)してみるとかもよくやる。

タグ: Julia言語

posted at 18:19:41

ゴルゴ・サーディーン @golgo_sardine

20年9月28日

@temmusu_n 内包量外延量を生涯の敵とした人もいたのですか。
その饅頭、欲しいです。

タグ:

posted at 18:14:33

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 あと @ code_warntype で確認すれば型安定性を持つコードを書けるようになるはず。

しかし、それだけではメモリアロケーションの頻発が原因の速度劣化を防げない。 @ time によるメモリの使い方の確認も忘れないようにするべき。

タグ: Julia言語

posted at 18:08:29

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 自作の函数の引数の型を記述しようとする暇があったら、@ code_warntype で引数から局所変数への型の伝搬がどうなっているかをしつこく確認した方が、「安全」が保たれる可能性が高いと思う。

型推論の結果のチェックはデバッグ時にも参考になる場合があるだろう。

タグ: Julia言語

posted at 18:06:44

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 おそらく「Juliaに引っ越そう!」と思っている人は「型注釈をしつこく書く手間をサボれる」「サボっても高速で計算されることを期待できる」の2つが魅力的だと思っているはず。

その期待が裏切られるリスクを減らすためには @ code_warntype による確認は必須である。

タグ: Julia言語

posted at 18:04:43

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 変数達の型がどうなるかが心配ならば、

@ code_warntype euler(f, u₀, tspan, Δt)

を実行してみればよい。添付画像は上の「誤差を含む数値」を扱った場合の結果である。

「警告色」の表示がないので、型の伝搬がうまく行っている。「警告色」が出た場合にはコードを見直す必要がある。 pic.twitter.com/pWPqaL1lOr

タグ: Julia言語

posted at 18:03:02

天むす名古屋 Temmus @temmusu_n

20年9月28日

啓林館の算数部門は塩野直道が始めた。多くの会社の例に漏れず、啓林館も創業者を敬う態度を示し、塩野直道饅頭まで売っている(冗談です。正確には塩野の編集した戦前の国定教科書を復刻販売している)。しかし、塩野が生涯の敵とした「内包量外延量」を奉じて算数指導をするとは?! かなり謎です。 twitter.com/golgo_sardine/...

タグ:

posted at 18:00:32

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 函数の引数の型を無用に制限してしまうと、他のJuliaユーザーが提供してくれている便利なパッケージとの連携がほとんど不可能になる。

函数の定義時に引数の型を無用に制限することの害は実は大きい。

便利なものを使えないのが普通だと思ったまま成長できなくなるリスクさえある。

タグ: Julia言語

posted at 17:57:05

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 このスレッドで紹介しているノート

nbviewer.jupyter.org/gist/genkuroki...

を更新した。

型の記述が一切含まれていないオイラー法の函数では添付画像のように「誤差を含む数値」もそのまま何も変更せずに扱える。 pic.twitter.com/C7hwzZZ0nW

タグ: Julia言語

posted at 17:54:18

砂___の___女 @vecchio_ciao

20年9月28日

真面目な話、「2メートル離れて渡せる」からって、両手でペタペタ持ち直しながら運ぶんじゃ意味ないってわからないのかな???
バカなのかな???

news.yahoo.co.jp/articles/e057c...

タグ:

posted at 17:12:25

非公開

タグ:

posted at xx:xx:xx

非公開

タグ:

posted at xx:xx:xx

ふかんじゅ(不観樹 露生)@岡山 @fukanju

20年9月28日

経験値取得効率の良い若いうちにレベル上げしておく方がお得なので、経験値にならなくなった単純作業は早めに卒業するのがポイントなのですが、ここを単純作業=苦労で経験値が貯まると勘違いすると時間浪費の割にレベルが上っていない状態に。

タグ:

posted at 16:43:30

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語

Juliaは試行錯誤に非常に使い易い。

コンピューターをコンピューティングに使うことが非常に楽しくなる。 twitter.com/kenofischer/st...

タグ: Julia言語

posted at 16:38:57

ふかんじゅ(不観樹 露生)@岡山 @fukanju

20年9月28日

「若いうちの苦労は買ってでもせよ」というのは、「若いうちの習得効果は高いので、上がりやすいうちに集中的にレベル上げをせよ」という意味であって、学習効果のない・すぐプラトーに達する単純労働で若い時間をすり減らせという意味ではないのよね。

タグ:

posted at 16:33:22

Im(Nyarn)@linuxナニモワカ @Imaginary_Nyarn

20年9月28日

ToDo:レポートはこれでやる
Julia+Jupyter Notebook環境をDockerで構築 qiita.com/yoshikiri/item... #Qiita

タグ: Qiita

posted at 16:31:52

kamimura @mkamimura

20年9月28日

@genkuroki @hayabusa_0613 使用例のような主な機能だけではなく、Wolfram AlphaをJupyter上でさっと使える cs.mkamimura.com/posts/2020/09/... のと、付いてくるデータの豊富さもお気に入りだったりします。😄( cs.mkamimura.com/posts/2020/09/... とか twitter.com/mkamimura/stat... とか)

タグ:

posted at 16:22:39

黒木玄 Gen Kuroki @genkuroki

20年9月28日

@hayabusa_0613 @mkamimura #Wolfram言語

nbviewer.jupyter.org/github/genkuro...
Free Wolfram EngineをJupyterで使う方法
(情報がちょっと古くなっている)

使用例

nbviewer.jupyter.org/github/genkuro...
Borwein積分

スクショ pic.twitter.com/cO31PErROH

タグ: Wolfram言語

posted at 16:06:06

Ki7cb @Ki7cb

20年9月28日

ちょっとjuliaでスクリーンキャプチャしたかっただけなのに誰もやってないから自分でいろいろ調べないといけなくてだるいことになってる

タグ:

posted at 15:38:11

非公開

タグ:

posted at xx:xx:xx

SGT @SGThr7

20年9月28日

colabくんjuliaに対応してくれないかしら

タグ:

posted at 15:30:28

多根清史 @bigburn

20年9月28日

投石は破壊力のわりに「誰がやったか」が特定不可能だから、学生運動で多用されてたもんなあ / “「石をなめてはいけない」銀座の警察博物館で機動隊の盾は銃弾用ではなく投石用と聞いたお話 - Togetter” htn.to/21Tf3duMqF

タグ:

posted at 15:24:55

ささにゃん♡ @sasanyan_

20年9月28日

ツイッターにいるオタク

・キーボードオタク
・3Dプリンターオタク
・回線オタク
・HDDオタク
・アニオタ(ざっくり)
・エロゲオタク
・ミリオタ
・鉄ヲタ
・Adobeオタク(好きだとは言っていない
・C++完全理解オタク
・Juliaオタク
・リサ・スーオタク

タグ:

posted at 15:19:53

非公開

タグ:

posted at xx:xx:xx

kamimura @mkamimura

20年9月28日

@hayabusa_0613 無料ですよ。
(⚠️登録の必要あり。あと、ライセンスは用途によるかもです。)
Jupyter(Wolfram Language kernel for Jupyter notebooks)と組み合わせて使ってます。 cs.mkamimura.com/posts/2020/09/...

タグ:

posted at 15:18:43

非公開

タグ:

posted at xx:xx:xx

kamimura @mkamimura

20年9月28日

@hayabusa_0613 CとWolfram EngineとJuliaとの比較があると嬉しいかもです。☺️
(ハンズ・オン・スタートMathematica® -Wolfram言語™によるプログラミング cs.mkamimura.com/tags/%E3%83%8F... で基礎を憶えたて だったりするからだけですが…😅)

タグ:

posted at 15:10:23

非公開

タグ:

posted at xx:xx:xx

非公開

タグ:

posted at xx:xx:xx

非公開

タグ:

posted at xx:xx:xx

ANDO Yasushi @technohippy

20年9月28日

なお、ある著名な忍者 pic.twitter.com/XjReikwumG

タグ:

posted at 14:53:13

ANDO Yasushi @technohippy

20年9月28日

まえがき(抜粋)です。いいたい放題。 pic.twitter.com/595Uk6oORP

タグ:

posted at 14:50:21

ceptree @ceptree

20年9月28日

JuliaのFastGaussQuadrature.jlのgausslegendreはnumpyのやつより断然はやい

タグ:

posted at 14:44:31

非公開

タグ:

posted at xx:xx:xx

非公開

タグ:

posted at xx:xx:xx

dc1394 @dc1394

20年9月28日

@genkuroki @unedSCLv2 ソースコードはGitHubのこちらに上げてあります。
github.com/dc1394/gauss_l...

タグ:

posted at 14:19:28

dc1394 @dc1394

20年9月28日

ソースコードはGitHubのこちらに上げてあります。
github.com/dc1394/gauss_l...

タグ:

posted at 14:18:53

Akinori Ito @akinori_ito

20年9月28日

私が思う史上最悪のプログラミングミスはロゴフ=ラインハート論文のExcelのバグ ja.wikipedia.org/wiki/%E3%82%B1... twitter.com/akinori_ito/st...

タグ:

posted at 13:58:21

Akinori Ito @akinori_ito

20年9月28日

@QuoraJP での質問: 史上最悪のプログラミングミスは何ですか? jp.quora.com/%E5%8F%B2%E4%B...

タグ:

posted at 13:54:52

Hiroo Yamagata @hiyori13

20年9月28日

秘密基地は男の子の夢だよなあ…… twitter.com/paramilipic/st...

タグ:

posted at 13:41:35

l_ppp @ppp3141592ppp

20年9月28日

何と、Zenn記事にサポート(投げ銭?)が入っていた😲
ありがたいことでございます。

投げ銭みたいのも一部の有名人のものだと思ってた。

タグ:

posted at 13:34:57

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 push!では log₂ n のオーダーでメモリ割当が発生し(確かそうだったはず)、push!はx[i]=aより複雑なことをやっている。だから、もしもpush!ではなくx[i]=aの方を使えるなら、そうした方が速いです。

しかし、型安定であればpush!も十分に速いので、あんまり気にしなくていいかも。

タグ: Julia言語

posted at 13:23:21

dc1394 @dc1394

20年9月28日

C++側が遅くなった原因は、おそらく高階関数を使ったからだと思います。Juliaは高階関数を使っても、遅くならないみたいですね。非常に魅力的です。

タグ:

posted at 13:08:45

dc1394 @dc1394

20年9月28日

@genkuroki @unedSCLv2 C++側が遅くなった原因は、おそらく高階関数を使ったからだと思います。Juliaは高階関数を使っても、遅くならないみたいですね。非常に魅力的です。

タグ:

posted at 13:08:23

dc1394 @dc1394

20年9月28日

@genkuroki @unedSCLv2 C++とJuliaで、簡単なコードで速度比較を行なってみました。
twitter.com/dc1394/status/...

タグ:

posted at 13:01:18

dc1394 @dc1394

20年9月28日

Gauss-Legendre積分の分点10000点で、試しに1 / (2√x)を1から4まで数値積分してみたけど、C++と比べてJuliaは無茶苦茶速かった。具体的には、
C++: 3.481679(秒)
Julia: 0.013464(秒)
で、Juliaの方が260倍くらい速かった。本格的にJuliaへの移行を考えるときが来た。

タグ:

posted at 12:45:13

Ki7cb @Ki7cb

20年9月28日

メモリに乗らない量のデータを触る予定が出来たからこれまで特に理由なく避け続けてきたデータベースを使う必要があると感じて調べてるけど特にJuliaを使うならこれが良いとかはないのかな

タグ:

posted at 12:00:13

Ki7cb @Ki7cb

20年9月28日

みんなJuliaでデータベース使いたい時どうしてるんだろ
何も情報がないというのはそういうことか

タグ:

posted at 11:57:19

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 型の伝搬を記述するという発想を理解できないと、

* 函数の引数の型を宣言しないと不安になり、

* 結果的にコードも煩雑になってバグが生じる危険を増加させ、

* 適用範囲が狭い使い回しが不自由な函数を書きまくる

ことになって損をします。

タグ: Julia言語

posted at 11:35:37

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 函数の引数の型を指定した場合であっても、函数内の局所変数の型をすべて宣言するのはクソ面倒なので、型の伝搬を意識できないと、クソ面倒なコードを書く羽目に陥ります。

そして型の伝搬に失敗すると速度的劣化が起こりがち。

Juliaで型の伝搬から逃げるのは無理です。

タグ: Julia言語

posted at 11:30:47

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語

Juliaにおいては

函数の引数の型は決まっていないが、函数が実行されるときには引数の具体的な型がどれかに決まっているので、引数の具体的な型が素直に伝搬するように書けば、広い範囲で使える函数が自然にできてしまう

のように考えると気楽に高速なコードを書けます。

タグ: Julia言語

posted at 11:27:29

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 添付画像のオイラー法の函数の定義では、引数達の型から、函数内の局所変数の型が(ほぼ)決まるように書かれていることが分かる。

実際には、個々の引数の意味を考えて、素直にコードを書けば、自然にこうなることが結構多い。 pic.twitter.com/lt3yHPkUGv

タグ: Julia言語

posted at 11:24:43

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語

* solは数値解を格納する配列。sol = [u₀] で作っているので、初期値 u₀ と同じ型を持つ配列になる。ここで、引数 u₀ から変数 sol に型が伝搬している。

* t_axisについても同様。

* 局所変数 u, t はそれぞれ初期値 u₀, t₀ で初期化されており、ここでも型が伝播している。 pic.twitter.com/qnnKZCBtmD

タグ: Julia言語

posted at 11:21:05

ぱらみり(ツイート、RT頻度低下中) @paramilipic

20年9月28日

ニューヨーク都市圏交通公社MTAの監察官がグランドセントラルターミナルの地下に勝手に作られた隠し部屋を摘発。保線職員3人が懲戒処分を受けた。そこにはストリーミングデバイスに接続された薄型ディスプレイ、電子レンジ、ソファーベッドが設置されており、冷蔵庫ではビールが冷やされていたという。 pic.twitter.com/m7S00DzBIl

タグ:

posted at 11:20:43

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 添付画像

euler(f, u₀, tspan, Δt) において、

* f(u, t)は微分方程式 du/dt=f(u, t) を与える函数
* u₀は初期値u(t₀)
* tspan=(t₀,t₁)は解を知りたい時間の区間
* Δtは時間の刻み幅

続く pic.twitter.com/miKos4bwlz

タグ: Julia言語

posted at 11:17:40

Qiita_Python @qiita_python

20年9月28日

Julia早引きノート[01]変数・定数の使い方 - qiita.com/ttabata/items/...

タグ:

posted at 11:15:14

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語

Juliaは、特に、Float64(double)とInt64(long)を前提にしたコードを書くときには、型の記述を省略し易いように設計されています。

「函数の引数の型を一切書かないスタイル」を「型が指定されていない引数の型が適切に伝搬するように書くスタイル」に発展させるとお得です。

タグ: Julia言語

posted at 11:10:48

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 添付画像

1. 型の明示的な記述が一切ないオイラー法の函数。多くの場合に使用可能で、コードがすっきりしており、アルゴリズムを読み取り易い。

2. Float64などの型の記述をしているオイラー法の函数。型の記述のせいで多くの場合に使えなくなっているだけではなく、コードも読み難い。 pic.twitter.com/d06Cv1ETN1

タグ: Julia言語

posted at 10:59:15

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 添付画像

1. 引数の型の記述を大部分削り、微分方程式を記述する函数の引数fの型をFunctionとする記述は残した。

2. そのせいで、パラメータ付き函数の実装に使われるfunction-like objectで微分方程式を記述すると、計算できなくなる。微分方程式は通常パラメータを含むので痛い。😭 pic.twitter.com/flbLQcaMjD

タグ: Julia言語

posted at 10:54:42

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 添付画像

1. SVectorによる10倍の高速化は魅力的なので、引数の型宣言でVectorではなく、AbstractVectorを使うようにした。その他にもウザい記述をもとに戻した。

2. Svectorによる高速化が可能になった!😊

3. しかし、Float64と書いているせいで、BigFloatは使えない。😭

続く pic.twitter.com/l7ns2lR3rQ

タグ: Julia言語

posted at 10:51:22

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 添付画像

1. まるでCのような感覚でオイラー法の函数の定義で型を記述するとこうなる。Vectorは配列、Float64はdouble、Int64はlongに対応している。

2. 引数の型宣言でVectorを使っているせいで、SVectorを使った高速化が不可能になっている。😭

続く pic.twitter.com/514XCAooyq

タグ: Julia言語

posted at 10:47:04

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 オイラー法の数値計算を行なう函数の定義中に型の記述がないお陰で、SVectorで計算を手軽に10倍高速化したり、BigFloatを使用したり、パラメータ付き函数の実装としてよく使われるfunction-like objectにも対応できる。

Juliaではそういう便利さと高速計算を両立できる。

続く

タグ: Julia言語

posted at 10:43:17

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 添付画像

1. オイラー法で調和振動子の微分方程式の数値解を求めている。オイラー法の函数に型の記述が一切出て来ていないことに注目。

2. SVectorを使うと10倍速くなる。

3. BigFloatでも計算できる。

4. 調和振動子の微分方程式をfunction-like objectで記述しても計算できる。 pic.twitter.com/Z3TdTYdRRF

タグ: Julia言語

posted at 10:39:39

dc1394 @dc1394

20年9月28日

JuliaのGPG版とmusl版との違い is 何

タグ:

posted at 10:37:06

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語

Juliaでは、函数の引数の型指定を(積極的なニュアンスで)書かなくてもよいという事実については、具体的なコードで、下手に型を書くことがどれだけ有害であるかを見ないと分からないと思う。

論よりコード。

以下で引用するソースコード↓
nbviewer.jupyter.org/gist/genkuroki...

続く twitter.com/genkuroki/stat...

タグ: Julia言語

posted at 10:35:13

黒木玄 Gen Kuroki @genkuroki

20年9月28日

@lpha_z #Julia言語 C側でsimdを使うのが面倒でやる気になれない人だと(例えば私😊)、Cでプログラムを書くと、おそらく、Juliaのビルトインsum函数を使っている

 Julia初心者よりも一桁遅い計算速度

で我慢しなければいけなくなるわけです。

Julia初心者が分散並列処理に手を出し始めると差はさらに開く。

タグ: Julia言語

posted at 10:23:42

黒木玄 Gen Kuroki @genkuroki

20年9月28日

@lpha_z #Julia言語 どうしてsimd使用の場合に比較するべきなのか?

①Julia側ではこのような場合には普通simdを使うので、simdを使わずに比較しても、Juliaユーザーにとっては実践的には無関係の話題になってしまう。

②プログラミングでは手間も重要なファクター。C側でsimdを使う手間も計測するべき。

タグ: Julia言語

posted at 10:12:36

Yuki Nagai @cometscome_phys

20年9月28日

@HShinaoka やってみました。Juliaの元々とほとんど同じでした。多分線形合同法が遅かったのと、律速箇所は乱数生成の部分とは別なのだと思います。

タグ:

posted at 09:59:13

でえもん @GreatDemon1701

20年9月28日

@musicisthebest_ @temmusu_n @sekibunnteisuu bが偶数の時だけの例外処理だったものが、スタンダードが消えて両方例外処理になっていますね。
やはりネタでは?

タグ:

posted at 08:23:26

グレッグ @glegory

20年9月28日

長期金利もゼロ近辺で推移しディスインフレ、円安にもならず、戦後最大の不況の最中に財政再建の必要性を訴える。完全に狂っている。この国は狂人がコントロールしているとしか、考えられない。

タグ:

posted at 08:08:15

k @musicisthebest_

20年9月28日

@sekibunnteisuu ネタだったらなんぼかマシ、かな? どっちにしろたぶらかされる学生さんがかわいそう
。もしやこういう反応の方がネタ?
以前あった、√( )/2に0, 1, 2, 3, 4を入れると順にsinの値が出るしょうもな暗記法にも、なぜだかしらんけど支持が集まりましたよね。みたことない操作はそれだけで受ける説。

タグ:

posted at 07:56:34

積分定数 @sekibunnteisuu

20年9月28日

@musicisthebest_ 日本お笑い数学協会会長とあるから、ネタなのでは?

タグ:

posted at 06:46:57

Stefan Karpinski @StefanKarpinski

20年9月28日

@EyalL @steveklabnik The teacher nodded but then shook her head. She said, “The problem is not that there is no path from one point to the other. The problem is that you are in a maze.”

タグ:

posted at 06:34:11

Stefan Karpinski @StefanKarpinski

20年9月28日

@EyalL @steveklabnik After some time and many attempts, one of her students said “Teacher, I have solved the maze” and presented a long, window path between the two points.

タグ:

posted at 06:33:50

Stefan Karpinski @StefanKarpinski

20年9月28日

@EyalL @steveklabnik The teacher presented her students a large, complex maze with two points marked and asked them “What is the problem here?”

タグ:

posted at 06:33:29

k @musicisthebest_

20年9月28日

bが偶数のときの公式が覚えられないなら、別に覚えなきゃいいわけで。一通りのものを簡便のために別に表したものをわざわざもとに戻して、その上で使い方だけ二つに分離してもはや何がやりたいのかわからない。そしてこれに「わかりやすい」の感想がつくのがさらにわからない。 twitter.com/takatasenseiw/...

タグ:

posted at 05:09:01

Keno Fischer @KenoFischer

20年9月28日

Anyway, I have some ideas along these lines that I'd like to explore in #julialang eventually. Still, there's much work to do.

タグ: julialang

posted at 03:56:43

Keno Fischer @KenoFischer

20年9月28日

Speaking of theorem provers, I think they've ironically wrapped around on this, in that they have a "meta-dynamic" system for interactively exploring type construction in the underlying static language.

タグ:

posted at 03:56:43

Keno Fischer @KenoFischer

20年9月28日

Ideally you'd be able to design a language that lets you scale all the way from "completely dynamic, fast exploration" to "validated by theorem prover"

タグ:

posted at 03:56:43

Keno Fischer @KenoFischer

20年9月28日

But regardless, failing to acknowledge the trade-off, I think precludes discussions about how one might design a system that lets users gradually transition from programming in an exploratory/dynamic world view to taking advantages of static checking.

タグ:

posted at 03:56:43

Keno Fischer @KenoFischer

20年9月28日

Static languages often presume that you basically have all the information (the more information your static system can represent, the more you need to know) about how your program behaves ahead of time, so it can be properly checked. You may have this information, you may not.

タグ:

posted at 03:56:43

Keno Fischer @KenoFischer

20年9月28日

Dynamic languages excel at this, because you get to very much have a "conversation" with the computer while working through your problem space.

タグ:

posted at 03:56:42

Keno Fischer @KenoFischer

20年9月28日

In particular, I think it avoids any discussion of the domain discovery problem, where you discover new things about the problem domain you're working in by observing the behavior of the program you've just written.

タグ:

posted at 03:56:42

Keno Fischer @KenoFischer

20年9月28日

Why? Because, as Stefan notes, it precludes any discussions of the trade off involved and gives an easy, but incorrect answer ("the users are too dumb") for why one might prefer a dynamic language.

タグ:

posted at 03:56:42

Keno Fischer @KenoFischer

20年9月28日

Thread. There's also this meme going around in PL circles that dynamic languages are designed by those too dumb to implement static type systems. I actually think that hearing this does a significant disservice to young PL designers. (1/x) twitter.com/StefanKarpinsk...

タグ:

posted at 03:56:42

Stefan Karpinski @StefanKarpinski

20年9月28日

Can we please just have a discourse that acknowledges that this is a trade off? I.e. that there are costs & benefits to both dynamic & static systems? The pro-dynamic camp does this. Can static type people stop insisting that there are no costs to static type checking? (6/6)

タグ:

posted at 03:31:26

Stefan Karpinski @StefanKarpinski

20年9月28日

But everyone agrees that being able to type check things is really good! The issue is that it is not free to do so: it complicates and restricts the language. That cost may or may not be worth paying, but there is a cost! That is all we (pro-dynamic people) are saying!!! (5/6)

タグ:

posted at 03:31:26

Stefan Karpinski @StefanKarpinski

20年9月28日

When such claims that dynamic languages are strictly worse are countered with examples of things that are easier/simpler/possible in dynamic languages, static language advocates often take it as an attack, as if the claim was that static languages are strictly worse! (4/6)

タグ:

posted at 03:31:25

Stefan Karpinski @StefanKarpinski

20年9月28日

So many static languages advocates, OTOH, insist that static languages are strictly better at everything—that there is no trade off. In this case the linked blog post argues that static language are just as good/expressive dealing with generic processing of external data (3/6)

タグ:

posted at 03:31:25

Stefan Karpinski @StefanKarpinski

20年9月28日

Dynamic language folks acknowledge that there are cases where static type checking is really valuable and appropriate, but feel that there are also many cases where dynamic languages are more productive and expressive and they tend to prefer that side of the tradeoff (2/6)

タグ:

posted at 03:31:25

Stefan Karpinski @StefanKarpinski

20年9月28日

I've noticed that there's a really consistent asymmetry between the way static and dynamic language advocates talk about the two kinds of languages and type systems... (1/6) twitter.com/steveklabnik/s...

タグ:

posted at 03:31:25

Stefan Karpinski @StefanKarpinski

20年9月28日

@steveklabnik Agree entirely! It is a trade off and there are different valid choices between the options. My entire issue with this article is that it tries to deny that there is any trade off!

タグ:

posted at 02:00:02

Stefan Karpinski @StefanKarpinski

20年9月28日

@steveklabnik Note: expressiveness is about ease not possibility—otherwise all Turing complete langs are equally expressive

It’s a perfectly valid position to say, yes dynamic langs are better at expressing generic/open functionality things, but I don’t care. They are still more expressive

タグ:

posted at 01:58:19

Stefan Karpinski @StefanKarpinski

20年9月28日

@steveklabnik How important you find being able to make really generic functions is a matter of opinion, but it is a real use case and it is much easier and more common in dynamic langs, which does make them more expressive, which refutes the thesis of the post

タグ:

posted at 01:55:00

Stefan Karpinski @StefanKarpinski

20年9月28日

@steveklabnik Whether the trade off is worth it is a judgment call but it’s real. The post tries to ignore the trade off, alluding to it only in a comment that dismisses making generic functions like `print` as “extremely rare”. No: that’s only extremely rare because your language is bad at it

タグ:

posted at 01:47:35

(「・ω・)「ガオー @bicycle1885

20年9月28日

田崎さんの統計力学Iが届いたのでパラパラと読んでみたけど、これなら俺でも読めそう。

タグ:

posted at 01:42:57

Stefan Karpinski @StefanKarpinski

20年9月28日

@steveklabnik Right, my counterpoint is that in practice static langs are less expressive because there’s an important class of highly generic functions that are much, much harder—often impossible—to implement and use in static languages. That is a real difference in expressiveness.

タグ:

posted at 01:34:23

黒木玄 Gen Kuroki @genkuroki

20年9月28日

@lpha_z #Julia言語 いずれにせよ、このような単純和ではsimdを使って高速化することが常識的だと思うので、CとJuliaの両方でsimdを使った場合の比較をした方がよいです。

Julia側のコードは私がすでに示しました。

Cの側は私は知りません(笑)

C側でsimdを試してみると「色々」分かると思います。

タグ: Julia言語

posted at 01:31:38

黒木玄 Gen Kuroki @genkuroki

20年9月28日

@lpha_z それはひどい誤解です。

#Julia言語 のbuiltin sumは、simdを使って高速化しているだけではなく、和を前から順番に取ることをやめることによって、誤差が大きくなる確率を下げているので、高速性と精度の両面で安全牌である

と述べています。続く

タグ: Julia言語

posted at 01:28:40

Stefan Karpinski @StefanKarpinski

20年9月28日

@steveklabnik I'm very confused about this interpretation: the post doesn't mention dlopen anywhere and all the examples are about writing generic code that can handle a variety of different input types...

タグ:

posted at 01:20:54

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語

みんなで普通にREPLに新しい機能(ユーザー定義の型の値の見やすい表示)を追加するコードを書いている世界があることを知らずに、"extremely rare exceptions" とか言われても困る。

視野狭窄に気付かずに技術的な事柄について「大演説」を打つ人が結構目立つ世界。 twitter.com/genkuroki/stat...

タグ: Julia言語

posted at 01:13:09

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 これは勉強になる!

deepcopyを気軽に使えないのは正直困る。 twitter.com/stefankarpinsk...

タグ: Julia言語

posted at 01:00:25

黒木玄 Gen Kuroki @genkuroki

20年9月28日

@lpha_z simdで速くなる理由についてはググって下さい。

値が微小に違って来るのは和の順序が違うからです。

Float32に精度を落とした場合には、前から順番に足すと正しい値を計算できない例を容易に作れます。

#Julia言語 の builtin sum は速いだけではなく、精度的にも安全牌です。 twitter.com/genkuroki/stat...

タグ: Julia言語

posted at 00:53:24

Stefan Karpinski @StefanKarpinski

20年9月28日

@steveklabnik In theory it's possible for a static type system to allow enough reflection & polymorphism to implement generic print or deepcopy functions, but, in practice they don't

The litmus test: can you implement your own deepcopy as a completely normal function that type checks?

タグ:

posted at 00:48:22

黒木玄 Gen Kuroki @genkuroki

20年9月28日

#Julia言語 最近では、

nbviewer.jupyter.org/gist/genkuroki...
Minimal Lisp in Julia - Part 2

で、自分で定義した型の表示の仕方の設定を実演してみせた。

Out[4] を解読させられるのは苦痛。
Out[6] のようにシンプルに表示してもらいたい。 pic.twitter.com/NYNKsXpzcS

タグ: Julia言語

posted at 00:45:53

るふぁ @lpha_z

20年9月28日

@genkuroki 初めまして、コメントありがとうございます。
Juliaは初めて触ったので、あまり常識的でないユースケースを選んでしまったかもしれません。

ところで、なぜsimdを使うと速くなるのでしょうか?
それに、計算結果も間違っているような……?

タグ:

posted at 00:43:55

Stefan Karpinski @StefanKarpinski

20年9月28日

@steveklabnik Another example is deepcopy: in dynamic langs it possible write a function that can generically deepcopy arbitrary data structures, including user-defined ones. In most static languages this is impossible without resorting to "magic", ie internals not part of the normal language

タグ:

posted at 00:41:22

黒木玄 Gen Kuroki @genkuroki

20年9月28日

Re: RT うけた🤣

Juliaを使っていると、REPLやJupyterで自分で定義した型の値がどのように表示されるかに関するコードを書くことは、"extremely rare exceptions" でもなんでもない。

視野狭窄なことに気付かずに変なことを述べる人は世界中にいる。

タグ:

posted at 00:40:01

Stefan Karpinski @StefanKarpinski

20年9月28日

@steveklabnik Eg printing user-defined types in ML (et al) is a nightmare. There's a special polymorphic print function the REPL uses internally, but since regular functions aren't polymorphic, you can't extend it, so it can only print built-in types. Have fun inspecting values of your types!

タグ:

posted at 00:36:36

Stefan Karpinski @StefanKarpinski

20年9月28日

@steveklabnik It sweeps the counterargument under the rug in a parenthetical: there are very useful generic capabilities—eg printing arbitrary objects—that are MUCH easier to implement/use in dynamic langs than in static ones. Doing that is only rare in static langs because they're bad at it

タグ:

posted at 00:32:57

Stefan Karpinski @StefanKarpinski

20年9月28日

@steveklabnik What? Are we reading the same post?

This post makes a really good argument: that you have to define how to handle each type correctly anyway, and static type systems make you do that up front, but you have to do it anyway, so they're no less expressive.

タグ:

posted at 00:29:27

Stefan Karpinski @StefanKarpinski

20年9月28日

@steveklabnik “While there are extremely rare exceptions to this [...] such as, say, implementing a REPL for your programming language [...] they do not occur in day-to-day programming” 😂

Yes, I NEVER want to print values of user-defined types without having to write print methods myself 🤦🏼‍♂️

タグ:

posted at 00:24:56

黒木玄 Gen Kuroki @genkuroki

20年9月28日

@lpha_z #Julia言語 私見では、頑張って最適化すれば、CとJuliaは同じ程度の速さです。

しかし、Juliaの側では最適化の作業が色々な意味でずっと楽になっており(Lispのような完全なマクロも使える!)、複雑なプログラムになればなるほど、最適化の楽さの違いでJulia側が有利になるものと思われます。

タグ: Julia言語

posted at 00:16:52

黒木玄 Gen Kuroki @genkuroki

20年9月28日

@lpha_z #Julia言語

Juliaでは単純な和には普通にsimdを使うので、JuliaとCの両方でsimdを使って比較した方が良かったと思います。

Juliaでsimdを使うと10倍以上速くなります。
Juliaのbuiltin sumも同じオーダーで速いです。

ソースコード↓
gist.github.com/genkuroki/c3b1... pic.twitter.com/C31z3YPJu7

タグ: Julia言語

posted at 00:12:39

@genkurokiホーム
スポンサーリンク
▲ページの先頭に戻る
ツイート  タグ  ユーザー

User

» More...

Tag

» More...

Recent

Archive

» More...

タグの編集

掛算 統計 超算数 Julia言語 数楽 JuliaLang 十分 と教 モルグリコ 掛け算

※タグはスペースで区切ってください

送信中

送信に失敗しました

タグを編集しました