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年10月11日
並び順 : 新→古 | 古→新

2020年10月11日(日)

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Python#Julia言語 をまるで「データサイエンス用の言語」であるかのように語る人がいるが、それはひどい誤り。どちらももっと汎用的。

私が板書写真をPDFにまとめるためにshell scriptのように使っている道具(=Julia)を、別の人達は最新の気候モデルのスーパーコンピューティングに使っている。

タグ: Julia言語 Python

posted at 23:46:44

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 は気候モデルのようなスーパーコンピューティングさえ可能な「高速グルー言語」。

Juliaもまた沢山の外部ライブラリとJuliaで書かれた多くのパッケージを貼り合わせて構成されている。

貼り合わせ対象にはPythonも含まれており、Pythonのライブラリの多く(全てではない)を楽に使える。

タグ: Julia言語

posted at 23:46:43

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Python は「最もよく使われているグルー言語(糊言語)」。多くのモノがPythonを使って貼り合わされており、最もよく使われているお陰で情報も楽に入手できる。

しかし、Python自体は非常に遅いので、Pythonを経由する異なるライブラリの貼り合わせはスムーズではない。

タグ: Python

posted at 23:46:42

高梨陣平 @jingbay

20年10月11日

科学演算の分野では長年、Fortranがその位置を占めていたが、最近ではJulia言語が大規模な数値演算の領域で勃興していると。

実際に増えているというようなデータは無いみたいだけど、表現力の向上が有効であるとの話が後半に。 twitter.com/arstechnica/st...

タグ:

posted at 22:53:36

ねむみ @Shu_Fukase

20年10月11日

ちと Python を触っているのだけれど Julia のほうがいいな……

タグ:

posted at 22:31:01

黒木玄 Gen Kuroki @genkuroki

20年10月11日

これも #Julia言語 のマクロ(メタプログラミング)ねた

twitter.com/julialang_news...

タグ: Julia言語

posted at 22:20:57

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 Common Lispは無理だとしても、Lisp好きのそんなあなたに

github.com/swadey/LispSyn...
LispSyntax.jl: A clojure-like lisp syntax for julia twitter.com/anibutsu/statu... pic.twitter.com/l05b70ArwH

タグ: Julia言語

posted at 22:01:27

黒木玄 Gen Kuroki @genkuroki

20年10月11日

@physics303 @nakayoshix #Julia言語 Python scipyで4000×4000の密行列のsvdに「740秒くらい」ということらしいですが、私のパソコンのJulia+MKLでは25秒(対角化は35秒)。

これはJuliaが速いのではなく、MKLが速い。
OpenBLASでもオーダー的に同じくらいだと思う。

ランダム行列の性質がきれい!

gist.github.com/genkuroki/d776... pic.twitter.com/BQSqENarNM

タグ: Julia言語

posted at 21:40:47

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語

github.com/JuliaHEP/ROOT....

github.com/tamasgal/UnROO...
github.com/JuliaHEP/UpROO...

Cxx.jlはつらい。

ファイルを読み込めれば「Juliaで計算」でいいかも。

タグ: Julia言語

posted at 20:43:29

黒木玄 Gen Kuroki @genkuroki

20年10月11日

@togekissu1234 あ、無理言ってしまって、ごめんなさい。

タグ:

posted at 20:32:06

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 ROOT使いの人にとっては

discourse.julialang.org/t/high-energy-...

に参考になる情報があるかも。

データさえJuliaに読み込めれば、Juliaで計算した方が楽な可能性もある。

C++との連携は非常に面倒という印象がある。再現性が手堅く(プラットフォームにもよらない)解説がもっとあった方がよいかも。 twitter.com/mitharzo/statu...

タグ: Julia言語

posted at 20:13:41

たまね @togekiss1234

20年10月11日

@genkuroki 私のGithubアカウントはありますが、一応論文にする予定の計算ですので見えるところにはリンクを貼っていません(すみません!)上の計算は今日ちょっと書いてみただけなのでまだネットにはのせてないです。

タグ:

posted at 20:09:39

黒木玄 Gen Kuroki @genkuroki

20年10月11日

@togekissu1234 どこかでコードは公開されているのでしょうか?

タグ:

posted at 20:02:42

たまね @togekiss1234

20年10月11日

@genkuroki ニューラルネットワークのパラメータを確率分布から取り出す、いわゆるベイズニューラルネットワークというのを使う計算をさせています。他のライブラリ(私の場合はFlux.jlですが)と併用するようなごちゃまぜの計算をしたいとき、細かいチューニングが必要になるのでとても嬉しいです😊

タグ:

posted at 19:58:29

たまね @togekiss1234

20年10月11日

@genkuroki 他のライブラリよりJuliaライクに書けるというのがあります、Stan.jlはかなりstanの書き方ですし、Turing.jlはもう少しマシですが、「簡単に書ける」というのが私的には使いづらかったです。Gen.jlは細かいところまでチューニングできるのがありがたいですね。

タグ:

posted at 19:54:27

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 を使って得た結果だけではなく、プログラムの方もいつも見たかったりする。

いつもそう思っているので自分が書いたコードはたとえ世の中で有害な影響を与える可能性があっても可能な限り公開している。

小さなプログラムの公開にはGitHub Gistがとても便利。

タグ: Julia言語

posted at 19:49:47

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 具体的にどのような計算をどのようなコードでやると使い易いのだろうか? twitter.com/togekissu1234/...

タグ: Julia言語

posted at 19:47:19

まあちゃん還暦だってよ @_mer2

20年10月11日

@muroimasane @epinesis TinEyeはそのまま検索欄にクリップボード画像をペーストできます。ここで引っ掛ったら、「Sort by oldest」でおおよその初出時期が判断できます。
tineye.com pic.twitter.com/J9UFZktzjd

タグ:

posted at 19:42:48

ごまふあざらし(GomahuAzaras @MathSorcerer

20年10月11日

わかりみがある

JuliaCon 2020 | The ups and downs of convincing to switch to Julia in a company | Jorge Alberto

www.youtube.com/watch?v=u_8kW8... pic.twitter.com/eU0omG0ZkF

タグ:

posted at 19:38:39

まあちゃん還暦だってよ @_mer2

20年10月11日

@muroimasane @epinesis おおっ、同志ですか?ここ便利ですよ。
「画像のパスを入力:(画像のURL)」のところにクリップボードの画像をペーストして検索できます。
デスクトップキャプチャから直接Google他の画像検索が一括でできます。
画像 検索 - 類似画像をオンラインで検索
smallseotools.com/ja/reverse-ima...

タグ:

posted at 19:26:49

非公開

タグ:

posted at xx:xx:xx

積分定数 @sekibunnteisuu

20年10月11日

#超算数

@oyanochikara 親野智可等さん、そんな能書きはさておき、こんな駄目な算数指南をしていることこそ有害ですよ。

www.oyaryoku.jp/books/sansu_ry... pic.twitter.com/qijkNaGQY3

タグ: 超算数

posted at 19:19:11

積分定数 @sekibunnteisuu

20年10月11日

それはさておき、この人、「ドラゴン桜」の指南役だそうだ。あの漫画、「数学は暗記だ」、と公言していて、陰山英男も絶賛していた。

 こういう一般論を語るのは良いとしても、ダメな勉強指南に加担しているようじゃね・・・ twitter.com/oyanochikara/s...

タグ:

posted at 19:12:30

黒木玄 Gen Kuroki @genkuroki

20年10月11日

wwwwwwwwwwwwwwwww
🤣🤣🤣🤣🤣🤣🤣🤣🤣
wwwwwwwwwwwwwwwww

github.com/PowerShell/Pow...
【PowerShell/PowerShell

Use forward slashes by default in Windows #10509】 twitter.com/poyothon/statu... pic.twitter.com/knG81i1isG

タグ:

posted at 19:09:35

kuzu/NULL (TRPG老害)%ゲ @kuzuNULL

20年10月11日

#プログラミング
LISPは難しいかな? 関数型と手続き型の折衷って面もあるし。
マクロにはまると謎空間に行きかねないかもしれないが。

タグ: プログラミング

posted at 19:08:33

伊藤 剛 @GoITO

20年10月11日

この記事は読まれたほうがいいと思う。後半に出てくる「炎上させていることを自慢げに語る男性」など注目。
toyokeizai.net/articles/amp/3...

タグ:

posted at 19:02:35

非公開

タグ:

posted at xx:xx:xx

Atsushi Sakai @Atsushi_twi

20年10月11日

やっと、Juliaステッカー来た😃。(ついでにSciPyのステッカーも作った) pic.twitter.com/suwkLEKLO3

タグ:

posted at 18:47:15

黒木玄 Gen Kuroki @genkuroki

20年10月11日

@yotarokubo @odashi_t #Julia言語 Juliaではほぼimport文を使う機会がなくて、

using SymPy: SymPy, sympy, @ vars, ...

のようにも書けます。函数の上書きも

using Foo: Foo
Foo. bar(x::MyType) = ~

でimport無しで可能。

あと、先のリンク先の積分の表示が欠けていた!ごめんなさい!
nbviewer.jupyter.org/gist/genkuroki... pic.twitter.com/ShhUCJfZuV

タグ: Julia言語

posted at 18:42:56

非公開

タグ:

posted at xx:xx:xx

まあちゃん還暦だってよ @_mer2

20年10月11日

@epinesis 2018年の12月1日頃に出回りだした動画のようで、ざっと探すとこのへんがいちばん古いんだけど、
reactor.cc/post/3736500
こういう縦に長いのも出てくるので
weibo.com/tv/show/1034:4...
オリジナルは別にあるようです。(つらい) pic.twitter.com/5VPpgc1bvP

タグ:

posted at 17:24:09

みりん風調味料 @mitharzo

20年10月11日

Juliaを試すのはROOT.jlがjulia v1に対応するのを待ってからにすべきか

タグ:

posted at 15:42:40

sin @hyotang666

20年10月11日

簡単に言うとローカルマクロでグローバルマクロをシャドウするマクロ。

代表がloop-finishをシャドウするloopマクロかな。

タグ:

posted at 14:53:49

sin @hyotang666

20年10月11日

具体的な解説はここ。

hyotang666.github.io/archives/cl-vs...

デバッグが著しく大変で、デバッグの方が難しいので人は全力で作ったものをデバッグできないという話を痛感したのはいい思い出。

タグ:

posted at 14:46:12

Yotaro @yotarokubo

20年10月11日

@genkuroki @odashi_t しょうもないポカでしたので,こんなに反応を頂いてしまい申し訳なくもあるんですが,画像のような状況でした.SymPy.piはSymだと思っていたのですがIrrationalで,Symとしてキャンセルされるにはsympy.piでなければいけなかったという話です.
i.gyazo.com/cd9b7e5ff91606...
i.gyazo.com/503fb6c758970f...

タグ:

posted at 14:44:06

sin @hyotang666

20年10月11日

自分が今まで書いてきたマクロの中で一番えげつないのは型クラスを実装しようとしたときのローカルマクロ(macrolet)に展開されるマクロかなぁ。

githubはここ。
github.com/hyotang666/tyc... twitter.com/genkuroki/stat...

タグ:

posted at 14:40:27

Daisuke KATO @Dsuke_KATO

20年10月11日

C++での行列操作のあれこれを調べてるとやっぱしJuliaに逃避したくなる。MATLABでもいいんやけど。Rustは・・・

タグ:

posted at 14:27:56

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 メモ

LineNumberNodeの例

マクロの式をExprで書こうとすると、LineNumberNodeを入れないといけない。(Julia v0.5とかv0.6時代は確かそうではなかった)

後で野良パッケージを改良しておこう。 pic.twitter.com/JHMpwlUAQ6

タグ: Julia言語

posted at 13:51:22

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 すでに完成品になっていて、よく使われているJuliaのマクロをユーザー側が利用するのはやさしいです(TeXの場合と同じ)。

使用例はJulia本体やパッケージのリポジトリにあるソースコードをみれば幾らでもサンプルコードが得られる。Googleによる検索よりも圧倒的に効率が良いです。

タグ: Julia言語

posted at 13:32:10

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 Juliaのマクロを自分で書くことについては、現時点ではユーザーフレンドリーとはとても言えない状況。

TeXで言えば、LaTeXさえ存在していなくて、式番号を手動で付けていた時代に似ていると思う。

原理的に「何でもできる」世界なので、楽に使える方向に何か発展があってもよいと思う。

タグ: Julia言語

posted at 13:20:47

yudai.jl @physics303

20年10月11日

@nakayoshix submitしたあとにJulia移植はしてみようかなと思ってまーす

タグ:

posted at 13:20:21

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 #Lisp 続き~、比較の仕方としてはフェアではないと思いました。

* 常にS式を扱うことを強制されるデメリット



* 普段はsin(π/6)という書き方をできるが、マクロを書くときにのみ(:call, :sin, (:call, :/, π, 6))という構造の取扱いを強制されることのデメリット

の比較の問題。

タグ: Julia言語 Lisp

posted at 13:14:52

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 #Lisp

同コメントより【データ->AST->コードでは、データとコードの見た目と操作方法に乖離があるので、Lispほど直截的で簡単なデバッグはできません。】

条件を揃えるためには「S式を楽に解釈できること」と「JuliaのExpr式を楽に解釈できること」の両方を前提にする必要があり~続く

タグ: Julia言語 Lisp

posted at 13:08:59

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 #Lisp しかし、

muuuminsan.hatenablog.com/entry/2020/10/...
コメント欄【Lispでなければ簡単に表現/作成/運用できないマクロというのはある】

はわたしには理解不可能。以下を具体的なコード例で示さないと証拠にならない。

①Lispでは簡単なマクロ
②そのJulia版を作る試みの結果
③Juliaで失敗する理由

タグ: Julia言語 Lisp

posted at 13:05:33

yudai.jl @physics303

20年10月11日

@nakayoshix Pythonですか,scipy 使ってます.

タグ:

posted at 12:38:09

yudai.jl @physics303

20年10月11日

@nakayoshix ありがとうございます!自分のマシンでやってみたら740秒くらいでした!密行列です!

タグ:

posted at 12:34:56

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 #Lisp 以下のリンク先のスレッドの特に以下にリンクした解説は非常に助かった。ありがとうございました! twitter.com/hyotang666/sta...

タグ: Julia言語 Lisp

posted at 12:27:34

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 #Lisp 反響

マクロの話は私ももっとよく理解したい。 twitter.com/cometscome_phy...

タグ: Julia言語 Lisp

posted at 12:25:20

yudai.jl @physics303

20年10月11日

4000×4000の行列をSVDするのに必要な時間はどれくらい

タグ:

posted at 12:11:06

数学とか語学とか楽しいよね @sasaburo

20年10月11日

entropy fixが弱い場合。中心で非物理的な挙動が出ます。 pic.twitter.com/VF85iOtyzO

タグ:

posted at 11:33:02

数学とか語学とか楽しいよね @sasaburo

20年10月11日

rarefactionです。entropy fix入れています。 pic.twitter.com/0W1jfgyeKr

タグ:

posted at 11:30:57

ceptree @ceptree

20年10月11日

みんなJuliaでなんか解いてる。Juliaでなんか解いてないのはワイだけ。

タグ:

posted at 11:24:02

数学とか語学とか楽しいよね @sasaburo

20年10月11日

JuliaでBurgers方程式解いています。次はFDS (Flux Difference Splitting, Roe)法です。右向きの衝撃波。 pic.twitter.com/fE6DB7UHfD

タグ:

posted at 11:22:29

ハッピーイヤー @snthotto

20年10月11日

物理の言語とも考えられる微分方程式がニューラルネットワークと相性が良いという話。すでに持っている知識を(NNに)取り込めるし、結果から知識(解釈)も得られる!素敵!

Juliaの最強微分方程式パッケージが背後にあるのであらゆる○○DE問題が異常終了せずに解けるのだそう

towardsdatascience.com/differential-e...

タグ:

posted at 11:19:52

sin @hyotang666

20年10月11日

でもそうするとList風の見た目からは乖離していくことになる。
内部的にそれを表しながら外部(人間)にそれを見せないってのは困難。

タグ:

posted at 11:13:20

sin @hyotang666

20年10月11日

ASTがただのListでなくてASTを表す専用のASTオブジェクトならそれを継承した様々なそれこそimplicit-locally型とかを作れてより便利にできる。

タグ:

posted at 11:09:49

sin @hyotang666

20年10月11日

同様にLETの本体(body)は宣言(declare)ができるものなので暗黙裡のlocallyにくるまれる必要があるのだけど、bodyがimplicit-locally型になってくれて勝手にいい具合に展開してくれると嬉しいのにそれができない。

タグ:

posted at 11:07:36

sin @hyotang666

20年10月11日

例えばLispのLETを作るとして、第一引数のリストは変数束縛を作るためのリストだけど、List型を継承したBind型とかを作れたら後は展開メソッドに丸投げみたいなことができて嬉しい、とかそういう話かな、と。 twitter.com/genkuroki/stat...

タグ:

posted at 11:04:22

ıɥɔnƃɐʇ oʇoʞɐɯ @jagainu

20年10月11日

うおー、めっちゃJulia面白そうだな。。

学部時代の数値流体の研究はFORTRANで、今はおそらくPythonとかに置き換わってるんじゃないかなと漠然と思ってたが、この記事を読む限りではまだFORTRAN使われてそう。 twitter.com/cometscome_phy...

タグ:

posted at 10:27:41

きゅーしす @Queue_sys

20年10月11日

C++の線形代数ライブラリでまともなものがないからJuliaに引っ越すことを真面目に考えている

タグ:

posted at 10:20:00

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 将来的にJuliaで「任意始まりのインデックス」(0始まりとか1始まりとかケチなことは言わない!)が普通になる場合に備えるには

* size(A)ではなく、axes(A)を使ってうまく書く。

* 1:length(A)ではなく、firstindex(A):lastindex(A) や eachindex(A) を使う。

docs.julialang.org/en/v1/devdocs/... twitter.com/hayabusa_0613/...

タグ: Julia言語

posted at 10:07:26

左巻健男(サマキタケオ) @samakikaku

20年10月11日

出口氏投稿への「頭に農薬撒いたら、少しはましになるんじゃないですかね」というコメントに対して出口氏は「たぶん、ですね。この権威主義、実に卑しい連中です」って。
故関英男氏のオカルト的な(まったく科学では相手にされない)「縦波重力波」説信者の比嘉照夫氏と同じレベルだと思った。

タグ:

posted at 09:43:40

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 野良パッケージ github.com/genkuroki/Meta... の応用例

gist.github.com/genkuroki/e943...

添付画像

1. Meta.@ dumpの表示は詳細だが見難い。

2. 上の野良パッケージを使えばよりコンパクトな表示が可能である。

3. 上の野良パッケージを使えばLisp風のタプルで書かれた式を実行可能! pic.twitter.com/0Tbylwj7iW

タグ: Julia言語

posted at 09:40:58

左巻健男(サマキタケオ) @samakikaku

20年10月11日

EM菌側は…と思ってFB公開「EM会」を見たらDND出口俊一氏が日本学術会議がホメオパシー批判声明を出したことを問題視。まあEM菌推進者はホメオパシーに同調。そしてコメント欄に、「世間知らずのぼんくらですから、科学バカの集まりです。偉そうにね、頭が原子力でできている」って。

タグ:

posted at 09:38:55

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 でのマクロについて理解したい人は以下のリンク先のスレッドを見て下さい。

ついさっき公開した野良パッケージ

github.com/genkuroki/Meta...

で遊ぶと、理解がはかどるかも。 twitter.com/genkuroki/stat...

タグ: Julia言語

posted at 09:25:27

エピネシス @epinesis

20年10月11日

スナガニは英語で”Ghost crab”といいますが、一説によると「影を残して走り去るから」だそうです。時速16km以上で移動できるスナガニは甲殻類最速とも言われていますが、この小さな体の一体どこにそんな力があるのでしょうか...
pic.twitter.com/HyBnPRDA5k

タグ:

posted at 09:21:50

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 Juliaのコードの多くは、特別にJuliaの知識がなくても、概ねこんなことをやっているのだろうと推測できる程度には易しいのですが、Exprを直書きするタイプのマクロを使われてしまうと、Juliaであっても全然そうではなくなります。

この問題を解決する天才が現れることを期待。 pic.twitter.com/48FerQ5N2h

タグ: Julia言語

posted at 09:20:45

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 以上においては私が責任を持てそうな「特殊函数論」を例に使いましたが、あらゆる数学および科学および技術に関しても同じような話があると思います。

徹底的に効率的な計算の世界への道が素人にも開かれるようになるのは非常に良いことだと思います。

タグ: Julia言語

posted at 09:16:18

八さん @Hachi5963

20年10月11日

大学、大学院に進める人増やしたって意味ないんだよ。大学、大学院に進んだ人がその後の人生で真っ当に喰っていけるようにする方がよっぽど意味ある

タグ:

posted at 09:12:17

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 「特殊函数論の数学」と「JuliaやLispのような完全なマクロ」の両方を知っていれば、それらはほぼ無関係な数学的事柄であることもすぐに理解できると思います。

前者の専門家に後者を気軽に利用できる道が開かれれば、今まで表に出難かった成果が自然に出て来るものと思われます。

タグ: Julia言語

posted at 09:11:54

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 そのような実例が、繰り返し紹介している「MITでの宿題の答え」

nbviewer.jupyter.org/github/steveng...

にあります。現在のJuliaでも動くようにしたものが

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

にあります(添付画像)。しかし、Exprの直書きなどが使ってあって、普通の数学者はコードの解読さえ困難でしょう。 pic.twitter.com/GCdbK00Zv1

タグ: Julia言語

posted at 09:08:48

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 続き。しかし、そのようなコードを数学者に直接書かせることは効率的ではありません。

数学者が知っている係数の計算法に従って係数が自動的に計算され、それが「係数をべた書きしたホーナー法」のコードに自動変換される仕組みが好ましいです。

まさにそれをやるのがマクロです!

タグ: Julia言語

posted at 09:03:42

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 例えば、特殊函数論が専門の数学者が自分が愛している有用な特殊函数の数値計算ライブラリを作って配布したいと思ったとします。

特殊函数の数値計算は多項式や有理函数による近似に帰着する場合が多く、「係数をべた書きしたホーナー法」で書くと計算が効率的になります。続く

タグ: Julia言語

posted at 09:03:42

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語#Lisp のマクロは難しいです。

そういう難しいものについては、

* プログラミングの専門家以外は使えなくてもよい

という考え方もありだと思う。しかし、

* 必ずしもそうとは言えない場合もある

と私は考えています。例えば、特殊函数の専門家の数学者が~続く

タグ: Julia言語 Lisp

posted at 09:03:41

黒木玄 Gen Kuroki @genkuroki

20年10月11日

@muuumin20 #Julia言語 #Lisp

Expr式の操作でJulia的に非合法なExpr式を作ることは容易です。そういうバグのあるマクロを私はよく書く!😭

Juliaでは sin(π/6) のように書くのが普通なのですが、マクロを書くときには、それは

Expr(:call, :sin, Expr(:call, :/, π, 6))

のことだと思うことになります。

タグ: Julia言語 Lisp

posted at 08:42:43

黒木玄 Gen Kuroki @genkuroki

20年10月11日

@muuumin20 #Julia言語 #Lisp

「構文情報の欠落」については実例が示されていないので理解できなかったです。

LispでのS式のJuliaでの対応物はExpr型オブジェクトです。S式の操作によるマクロとExpr式の操作によるマクロは本質的に同じことをやっているので優劣はないと思います。

twitter.com/genkuroki/stat...

タグ: Julia言語 Lisp

posted at 08:37:57

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 再掲:私は「人間にとって易しい表示」(例:sin(π/6))と「実体」(例:Expr(:call, :sin, Expr(:call, :/, π, 6)))の話を分けて考えた方がよいと思っています。

タグ: Julia言語

posted at 08:32:27

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 Juliaでマクロを書くことは、本質的に

(:call, :sin, (:call, :/, π, 6))

のようにも表示できるデータを操作するプログラムを書くことと同じです。

S式を操作するLispのマクロと本質的に同じことをやっているとみなせます。

違うのはJulia側ではsin(π/6)と普通書くことです。

タグ: Julia言語

posted at 08:30:07

Yuki Nagai @cometscome_phys

20年10月11日

続編。この二つでJuliaでマクロが書ける気がしてきた。

muuuminsan.hatenablog.com/entry/2020/10/...

タグ:

posted at 08:27:34

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 Juliaで

Meta. show_sexpr(:(sin(π/6)))
(. の直後の空白は削除)

を実行すると、よりS式っぽく

(:call, :sin, (:call, :/, π, 6))

と表示されます。このようにシンプルに表示してくれる機能は、Juliaでのメタプログラミングの習得のために役に立ちます。

タグ: Julia言語

posted at 08:26:56

Yuki Nagai @cometscome_phys

20年10月11日

Lisp全く知らなかったけど、これ読んだらJuliaのマクロがわかるようになってきた。
JuliaとLispのマクロの比較 - SE教育パパむううみんのブログ muuuminsan.hatenablog.com/entry/2020/10/...

タグ:

posted at 08:25:42

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語

* LispにおけるS式のJuliaでの対応物はExpr型のオブジェクト(上でExpr式と呼んだもの)です。例えば、

Expr(:call, :sin, Expr(:call, :/, π, 6))
(これは :(sin(π/6)) に等しい)

をS式風に書くと

(sin (/ π 6))

単に表示のシンプルさとヘッドの:callの有無が違うだけ。

タグ: Julia言語

posted at 08:23:08

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語

* 人間に直接S式を見せることと、人間にJuliaのExpr式を見せることは本質的に同じ。

* LispユーザーはS式を読めるが、普通のJuliaユーザーはExpr式を見ても解読は大変。

* プログラミングをかじった人の多くにとってS式の解読は困難だが、Juliaのコードはそうではない。

相互リンク↓ twitter.com/genkuroki/stat...

タグ: Julia言語

posted at 08:17:26

非公開

タグ:

posted at xx:xx:xx

黒木玄 Gen Kuroki @genkuroki

20年10月11日

@muuumin20 @antimon2 #Julia言語

(a, b, (c, d)) = [1, 2, [3, 4]]

のように代入できてしまうのはちょっとびっくりですよね。

「JuliaでExprを直接操作するマクロ」と「LispでS式を操作するマクロ」は本質的に同じことをやっているので優劣はないと思います。以下に色々書いておきました。

twitter.com/genkuroki/stat...

タグ: Julia言語

posted at 08:08:26

Stefan Karpinski @StefanKarpinski

20年10月11日

@kerybas @Jan_R_Peters @ThePSF @SciPyTip @JuliaLanguage @JuliaConOrg Not the OP, but it’s a very conscious policy in Julia to never guess what the user intends unless there’s only one clear choice. This leads to far fewer situations where the code does something, just not what you wanted it to

タグ:

posted at 08:00:08

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 既出のJupyter notebookの「名前空間由来のバグ」をとったバージョン↓

gist.github.com/genkuroki/b410...

タグ: Julia言語

posted at 07:47:59

黒木玄 Gen Kuroki @genkuroki

20年10月11日

#Julia言語 野良パッケージ

InteractiveUtilsPlus.jlの名前をMetaUtils.jlに変えて、リスプっぽいタプルで書かれた式を評価してくれるマクロ @ teval を追加しました。その過程で色々バグを取った。

github.com/genkuroki/Meta... pic.twitter.com/Il3J1h0k3q

タグ: Julia言語

posted at 07:46:04

河東 @y_s_c_kato

20年10月11日

超算数問題の本質は、算数/数学の本質への無関心による浅い思考の採用とそこから発生する児童への呪いだと思ってます。長男に被害(場合の数での躓き)が出ていたので私はアンチ超算数です。 twitter.com/sekibunnteisuu...

タグ:

posted at 06:00:34

黒木玄 Gen Kuroki @genkuroki

20年10月11日

@yotarokubo @odashi_t #Julia言語 どういう状況になっているのか見えませんが、

gist.github.com/genkuroki/45f8...

を見れば、「JuliaのライブラリとしてのSymPyの挙動」(例えば円周率πとPIとSym(π)の振る舞い方や2とSum(2)の違い)を理解できると思います。 pic.twitter.com/ia2vPCqM2G

タグ: Julia言語

posted at 04:26:12

非公開

タグ:

posted at xx:xx:xx

非公開

タグ:

posted at xx:xx:xx

Jan Peters @Jan_R_Peters

20年10月11日

Python (@ThePSF,@SciPyTip) Programming: 10% writing code. 90% figuring out why it doesn’t work.

Julia (@JuliaLanguage, @JuliaConOrg) Programming: 70% writing code, 5% figuring out why it doesn’t work, 25% being mesmerized by the beauty of the code.

タグ:

posted at 01:35:31

Erik Engheim @erikengheim

20年10月11日

I notice a lot of Julia beginners try to program Julia as they would do with Visual Studio or some big IDE heavy language. Not a great experience. Here is a more realistic way of thinking about #JuliaLang development: www.youtube.com/watch?v=CRiD12... #beginners #programming #REPL

タグ: beginners JuliaLang programming REPL

posted at 01:20:51

非公開

タグ:

posted at xx:xx:xx

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

User

» More...

Tag

» More...

Recent

Archive

» More...

タグの編集

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

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

送信中

送信に失敗しました

タグを編集しました