タグ

*あとで試すとelixirに関するainameのブックマーク (2)

  • The Elixir programming language

    All Elixir code runs inside lightweight threads of execution (called processes) that are isolated and exchange information via messages: current_process = self() # Spawn an Elixir process (not an operating system one!) spawn_link(fn -> send(current_process, {:msg, "hello world"}) end) # Block until the message is received receive do {:msg, contents} -> IO.puts(contents) end Due to their lightweigh

    The Elixir programming language
  • elixirはプログラマの万能薬になるか その3 - Fat Old Sun

    前回はrubyなところを主に説明してきたので、いよいよ今回はLispな所であり、個人的に最もエキサイティングだと感じているメタプログラミングについて記述する。 メタプログラミング プログラムを書くプログラムを書く事をメタプログラミングと呼ぶ。Cのプリプロセッサや、yacc等のコード生成系もメタプログラムの範囲に含める場合があるようだが、Lispが最も有名であり、徹底されている。LispはプログラムがLispのS式で表現されているため、Lispの全能力使ってメタプログラミングが行える。それ故に、Lispは他の言語とは次元の違う強力さを持っている。プログラム言語がデータ構造として表現できる事(homoiconic)と、構文解析とコード生成の間にマクロの層があることがこの強力さの源になっている。 一方、elixirはというと、ruby風味のシンタックスであるにも関わらず、Lisp並のメタプログラ

    elixirはプログラマの万能薬になるか その3 - Fat Old Sun
  • 1