一緒に読まれている質問
- #検索 これからWEB制作を学びながら職場のポートフォリオサイトを制作する予定です。実績紹介のギャラリーをサイト内でハッシュタグ...
- Firebase Auth の refreshトークンの取得とIDトークンの更新https://qiita.com/sp...
- android os ってもう標準で明朝体表示されるのですか?
- #下請け会社が競合元請け会社の仕事を受ける場合 年商30億、社員100名ほどの下請け会社(電子部品製造組み立て業)に営業職で勤務しています。10年ほど前、会社の売り上げ...
- このサイト見て感動しました!https://www.pola.co.jp/wecaremore/mothersday/こ...
- #検索 これからWEB制作を学びながら職場のポートフォリオサイトを制作する予定です。実績紹介のギャラリーをサイト内でハッシュタグ...
- #下請け会社が競合元請け会社の仕事を受ける場合 年商30億、社員100名ほどの下請け会社(電子部品製造組み立て業)に営業職で勤務しています。10年ほど前、会社の売り上げ...
- W3Q本格的に投稿数減ってる。ガチで終わりそうやね。
- このサイト見て感動しました!https://www.pola.co.jp/wecaremore/mothersday/こ...
- システム勉強中で質問です。管理画面から入力できる顧客idって普通のidとは別でカラム使ったほうが良いですかそれともaut...
- W3Q本格的に投稿数減ってる。ガチで終わりそうやね。
- このサイト見て感動しました!https://www.pola.co.jp/wecaremore/mothersday/こ...
- #質問 面白法人カヤックのこと、業界のみなさんはどう感じてますか?僕はそこで働いてますが、いい評価も悪口もどちらも耳にしています...
- #下請け会社が競合元請け会社の仕事を受ける場合 年商30億、社員100名ほどの下請け会社(電子部品製造組み立て業)に営業職で勤務しています。10年ほど前、会社の売り上げ...
- #質問 美大生です。課題で「小塚ゴシック」を使ってビジュアルを作ったんですが先生に「そんなダサいフォント使うな」と言われました。...
17 件の回答
それって何ですか?説明してくだせえ
Re:2
ElixirはErlang VM(BEAM)上で動く関数型言語だよ まぁJVMでいうところのScalaみたいな感じ
構文は昔からある関数型言語も参考にしつつRubyあたりをだいぶ参考にしていてモダン
関数型言語だから、特徴として
- 関数が型として存在する(他の関数の引数に関数を渡せる)
- オブジェクトは存在しない、全てはデータ
- データはimmutable(破壊的変更ができない、それっぽいことするときは新しいデータを生成して返す)
あとはBEAM上で動いているゆえの特徴として
- Erlangの関数が全部使える
- 軽量プロセスが使えて並列処理が大の得意 (他言語でのシステムスレッドやプロセスと違ってめちゃくちゃ軽い)
言語の特徴としては
- module と function の2つでプログラミングする
- (Erlangとちがって)マクロがある
- (Rubyとちがって)プリコンパイルされる
- 動的型付け(静的チェッカーはある)
- 基本的にアプリケーションは本体とそれを監視する親からなる(それぞれが軽量スレッド)
- ↑なのでなにかエラーが起きてもrescueとかせずクラッシュさせる
- クラッシュしたら親がプロセスを再起動させる
- パイプ演算子( |> )がある
- 1つ前の結果を次の関数の第一引数に渡す
- "1, 2, 3, 4" |> String.split(", ") |> Enum.map(&String.to_integer/1) |> Enum.sum()
- 10 が返ってくる
- Enum.mapには関数を渡している
- 各ステージでどんな型が渡されるか想像しやすい
RailsにあたるPhoenixってフレームワークが存在してて、Railsのだめなとこ(名前規約が強すぎる、シングルスレッドの呪縛がある、大きなアプリケーションに向いてない、遅い)が解決していてつよい
BEAMが何十年も商用利用されてきていて信頼性が(若い言語なのに)あるのもポイント
ここに来る人はもっともっと下層にいるから場違いかと。
関数型言語信仰はHaskellだけで飽きたから失せろ。
Re:6
やっぱ論理型だよなぁ
関数型ってことくらいしか知らん。どういった類いの業務に強い言語なの?(何でもいけるとかいう答えはNGね。言語の強みとそれが特に活きるところが知りたいので)
この世には、エリクサーを躊躇なく使える人間と、使えない人間がいるんだ。
https://blog.tinect.jp/?p=45903
エリクサーって名前のアプリ多いから紛らわしいよな。
Re:8
用途でいうと
- 通信系
- もともとErlangはエリクソン社の業務用通信機器のソフトウェアなどに多く用いられてきたこともあって、Elixirも通信系に強みがある
- Phoenixというフレームワークがあり、標準で文字列型がUTF-8であったりすることもあって、現状ではWebのサーバーサイドプログラミングで用いられることが多いかな
- とくにマイクロアーキテクチャなサービスにはもってこい
- あとはBEAMのマイクロプロセスはもともとネットワーク上で使われることを想定してあってプロセス間通信はネットワークを超えて行えるので、分散サーバーで並行処理をするようなことにも向いてる
- プロセスはVM上なのでコア数に依存せず数十万個とか作れるので、例えばニュースサイトを片っ端から並行してスクレイピングして出来上がり次第DBに保存する、みたいな用途とかにも適合する
APIサーバー以外だと日本だとWebRTCサーバーを書いてる会社があったり、ニコニコのバックエンドの一部がこれで書かれてたり、海外だとゲームサーバーに使ったりもしている
逆に明確に苦手なものもあって、
- BEAMは遅い(Erlang/Elixirのアプリケーションは速いことが多いけれど、それはみんなマルチプロセッシングをしているから)
- 遅いので、科学技術計算なんかには向かない。
- ただしCとかRustとかとバインドする機能はあって、それを使えば速い実装もできる
- でもそれは「Pythonは速い」と同じ話になるので…
- あとはもちろんVM上でしか動かないのでシステムプログラミングはできない。
Re:10
日本だと化粧品もアイテムも検索に引っかかるしね
Re:9
なんだ、この汚物のような記事はw
Re:3
へー、いいじゃん。
俺が知ってるエリクサーと違った
https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcS2-AVVuVF1zZVJZUvevyfyJzMRSOUxTqQlR1o_UuMYm85ds6ql
しらべてみたが、2005年に作られたらしいじゃん。
これから、、といいつつも浸透しないのは戦略の問題だろうね。
WINDOWSみたく、マスト的な存在に成り上がるくらいの営業力がさ。
Laraのエリクサーのこと?