OOC 2024 の発表資料です。後のフィードバックを参考に、より妥当な文言に改訂してあります。 ※ 本コンテンツには、一部特定の宗教思想の迫害に言及する表現がございますが、そのような行いを肯定する意図の内容ではございません。
OOC 2024 の発表資料です。後のフィードバックを参考に、より妥当な文言に改訂してあります。 ※ 本コンテンツには、一部特定の宗教思想の迫害に言及する表現がございますが、そのような行いを肯定する意図の内容ではございません。
リクルートアドベントカレンダーの20日目の記事です。 adventar.org 最初にこの疑問を思ったのは、今も忘れない R-ISUCON 2021 というリクルートの社内ISUCONの運営で炎上していた時の話です。 ちなみに R-ISUCON 2021 は劇的な結果で終わっているので、興味のある方は見てみてください。 blog.recruit.co.jp R-ISUCON 2021 では、 Node.js (TypeScript), Go, Java の3パターンの実装が出てくることが通例になっていまして、今回は Java の実装から Node.js, Go に適用していた時に一緒に実装していたメンバーからの疑問が『例外には色々な議論があるけれど、「例外を初めて実装した言語」ってどういう気持ちで実装したんだろう』という話が挙げられたので、そのネタを持ってきました。 ちなみにここで指してい
日本時間の2021年4月26日午前3時6分、Emacsのmasterブランチにfeature/native-compブランチがマージされました(コミット:Merge branch ‘feature/native-comp’ into into trunk)。これにより、HEADのEmacsをビルドすると、Native compilation機能を兼ね備えたネイティブコンパイルEmacs、通称Gcc Emacsが使えるようになりました。 ネイティブコンパイルEmacsの機能 # ネイティブコンパイルEmacs(以下、Gcc Emacsと呼びます)は、Andrea Corallo、Luca Nassi、Nicola Mancaの3名によるBringing GNU Emacs to Native Code という論文で詳細が説明されています。 簡単に説明すると、これまでのEmacsは、Elisp
Author: conao3 Published: 2020-08-25 Last Modified: 2020-12-04 GitHub Source: md はじめに Emacsは1972年にMITで生まれ、今日に至るまで名だたるハッカーに愛されてきたエディタです。 Emacsがハッカーに愛されている理由は、Emacsがそれ自体、動的なEmacs Lisp環境であり、エディタの動作をEmacsの開発者ではないあなたが、ビルドなしで動的に自由にハックできることです。 OSと協調する必要のあるEmacsのコアとEmacs LispそのもののコアをC言語で提供する他は、ほとんど全ての機能がEmacs Lispによって提供されています。 あなたは細部にわたってEmacsの全てを制御できますし、Emacsの上にあなたの思い描く、あらゆるアプリケーションを構築することができます。 Emacsはあな
本記事は Emacs Advent Calendar 2018 の22日目の記事です。 成果物 まずは現時点 (12/22) での動作状況です。 https://github.com/gongo/emacs-nes nestest.nes palette_pal.nes 使い方はいつか README の方に書きますが(いつか)、ざっと書くと: ソースコードもってくる nes*.el があるディレクトリに load-path を通す load-library nes M-x nes で *.nes ファイルを選択 これで動くはずです。Byte Compile 推奨。 経緯 様々な言語で NES (= Nintendo Entertainment System) のエミュレータを実装する、というネタは昔からあります。私も何かしらの言語でやってみようかな? とボンヤリ考えたまま特に手をつけていま
はじめに こんにちは。 機械学習エンジニアの辻です。 本記事はdely Advent Calendar 2018の22日目の記事です。 dely Advent Calendar 2018 - Adventar dely Advent Calendar 2018 - Qiita 昨日は弊社のサーバサイド・エンジニアの山野井が「【Vue.js】算出プロパティの仕組みについて調べてみた」という記事を書きました! とてもわかり易く解説しているので興味のある方は是非読んでみてください。 tech.dely.jp さて本日は「Lispの車窓から見た人工知能」と題しまして、プログラミング言語Lispから見た人工知能の風景を眺めていきたいと思っています。ぼくはEmacs使いのLisperですが、Lispを書くのは自分用のスクリプトや、Emacs Lispの設定変更といったものだけで、ふだんの機械学習に関す
プログラミング言語を作る時には、途中で変えることが極めて難しいデザイン選択を最初に行わないといけないことがあります。今回は川合史朗さんがGaucheを設計した時に行ったデザイン選択の判断について話を伺いました。また、浮動小数点数のトリッキーさについても話をしています。出演者: 川合史朗 (@anohana)、Rui Ueyama (@rui314) https://turingcomplete.fm/17 ハッシュタグは#tcfmです。 TCFMはサポーターの投げ銭によって収益を上げています。このコンテンツに課金してもいいよという方はぜひクリエイター支援サイトPatreonから登録してご協力ください。 イントロ (0:00) セキュキャン参加者募集中 (0:41) 俳優のオーディションとその心構え (2:43) 川合史朗さんが出演している映画がサンフランシスコで上映されます (5:16)
TeXやMicrosoft Word、あるいはその他の汎用的なテキスト処理環境では簡単に実現できるような見た目に自分の文書を似せようと頑張る(文字どおり)無数の人たちに対して、 “悪いけど、うまくいかないよ” と繰り返し言い続けるのは、実際のところ、この1年間、私にとっては継続的な楽しみだった。- Marc Andreessen 1994年 Tim Berners-LeeによってHTMLが発表された1991年には、ページのスタイルを設定する方法はありませんでした。HTMLタグがどのように処理されるかはブラウザ次第で、多くの場合、ユーザの恣意的な入力が大きく影響しました。そうした事情から、ページがどのようなスタイルで処理されるかを”提案”するような標準的な方法を求める声が上がるようになりました。 しかし、CSSが導入されるのは5年先で、完全に実用化されるには10年の歳月を待たねばなりません。
Software Design連載記事を掲載します。 株式会社技術評論社の許可を得て掲載しています。 草稿なので細かい部分は実際の記事とは異なることがあります。 他の記事は左下にある「■雑誌連載中(全文公開)」から見られます。 ども、るびきちです。本連載も来月で1周年となりますけれども、1年の締めくくりとして今月と来月の2回に分けてhelmという超絶便利なパッケージを紹介します。 helmというパッケージとは何かを言葉で説明するのはとても難しいです。しかし、一度使ってみればその他のEmacsのコマンドとは異次元のものを感じることは間違いありません。なぜなら、その他のEmacsのコマンドとは考え方そのものが根底から異なるのです。 helmとはヘルメットではなくて「舵(かじ)」とか「支配」という意味なので、「Emacsの舵」とか「Emacsの支配者」ということになります。そしてその名に相応しい
僕は妻と二人暮らしをしています。かつてはLINEを使って普段のやり取りをしていたのですが、一年ほど前からSlackを使い始めました。 Slackの良いところはハッカビリティが高いところです。Google Calendarなど他のサービスと連携することができるし、IFTTTを使って多少凝ったこともできます。 IFTTT時代 IFTTTを使えば天気予報をSlackチャンネルに流せます。 英語というのは不本意ですが、一応今日の天気はわかります。英語が読めなくてもアイコンを見れば、雨が降りそうな気がするってくらいはわかります。 しかし、しばらく運用しているうちに疑念が。 天気予報が当たらない。 IFTTTが連携している天気予報は「The Weather Channel」の情報なのですが、これが日本の気象庁の予想と違っていて全然当たらない。 ちなみにiOS8から標準の天気アプリが提供している予報もこ
私には、Emacs Lisp によるウェブアプリケーション開発シーンを盛り上げていきたいという熱い想いがあります。 最近、「次に来る大物Web言語」と称され Elixir などが注目されている様子が伺えますが、ウェブアプリケーションのサーバーサイド実装において次に来る言語というのであれば、個人的には Emacs Lisp こそを推していきたいと思います。なぜなら Emacs Lisp には、インタプリタでありそして同時にプログラミング環境でもある Emacs というソフトウェアが存在するからです。Emacs と最も親和性が高く、最もプラグインが豊富な言語こそが Emacs Lisp です。これを単なる Emacs の設定やプラグインを記述するための言語に留めておくには惜しいと言えるでしょう。 残念ながら現状 Emacs Lisp でのウェブアプリケーション開発は全くといって注目されていない
このブログはEmacs Lispで書かれていて、CoreOSが入ったマシンにDockerコンテナとしてデプロイされ、動いてる。あなたがこのブログのページをロードする度に、Dockerコンテナ内で走っているEmacsがリクエストをハンドリングして、org-modeで書かれた記事ファイルをhtmlに変換し、用意されたviewに差し込み、レスポンスを返している。elnode というEmacsをウェブサーバー化するプロダクト見つけて、気持ちが高まってしまったのが動機。 記事はorg-modeで書けて、いい感じ。ソースコードは github.com/supermomonga/darui.io にあります。Emacs Lispによるウェブアプリケーション開発、ある程度知見が貯まったので次はSinatra風ウェブアプリケーション作って、その後ドッグフーディングしてちゃんとしたブログエンジンとして書きなお
Welcome to Hy’s documentation!¶ Welcome to Hy! Hy is a wonderful dialect of Lisp that’s embedded in Python. Since Hy transforms its lisp code into the python Abstract Syntax Tree, you have the whole beautiful world of python at your fingertips, in lisp form! Meet our mascot, “Cuddles”: Read more about Hy in these docs! We’re also on IRC! Join #hy on irc.freenode.net!
デザインの「悪い方がよい」原則 The Rise of "Worse is Better" rpg@lucid.com 日本語訳: daiti-m@is.aist-nara.ac.jp 私や Common Lisp と CLOS のデザイナーのほとんどは、MIT/Stanford 方式の設計に親しんでいる。 この方式の核心は、「正しい」やり方をせよ、という ことにつきる。デザイナーにとっては、以下の点をすべて正しく満たすことが 重要である。 簡潔性 デザインは実装と使用法の両面において単純でなければならない。 このとき、使用法が単純な方が、実装が単純なことより重要である。 正当性 デザインはすべての点において正しいものでなければならない。 誤りは許されない。 一貫性 デザインは一貫性を欠いたものであってはならない。一貫性を保つ ためには完全性は少しだけ犠牲にしてもよい。一貫性は 正当性と同
GNU Emacs は、フリーソフトの世界で最も長く、継続的に開発されてきたアプリケーションの1つです。考え方によっては、30年以上を経て、これを複数世代のプロジェクトと見なすことができます。しかし、これだけ長寿であると課題もあります。Emacsコミュニティの多くの人たちは、そろそろエディタ内部のLispインタプリタを、より高速で最新のものにリプレースする時だと結論付けてきましたが、Emacsの大半が動作している基礎となる仮想マシンを入れ替えると、Lispによる Emacs特有の性質 に与える影響を含め、大規模な影響が出ます。 この話題は以前にも上がりましたが、最近では9月11日にChris WebberがEmacs開発リストに、Robin Templetonの Guile-Emacs への作業状況に関して質問を しています 。その名前から分かるように、Guile-Emacsは内部のEma
Cで書くコードの方がCommon Lispで書くより速いって人がいたら、それは彼のCの技量が高すぎるってことだね。 “If you can't outperform C in CL, you're too good at C.” — Eric Naggum 最近、Common Lispの非同期Webサーバ「Wookie」を高速化する過程で、ボトルネックになっていたHTTPリクエストのパース部分を高速に処理するライブラリを書きました。 fast-http - A fast HTTP request/response parser for Common Lisp 既存のライブラリ「http-parse」よりも約10倍速く、Cのライブラリ「http-parser」より5%ほど高速です。 追記 (2014/10/26): 最適化をやり直し、現在は「http-parse」よりも約27倍速く、Cの「h
「Cookie の一覧」は、eww が実装したものではなく、Emacs 24.4 で追加された新機能( url-cookie-list )を使っているのが面白いところ。標準添付される Emacs Lisp に合わせて、本体に機能が追加された形に見える(真実がどうなのかは知らない)。 簡単な操作はこんな感じでだいたい使えそうなので、後は検索エンジンをカスタマイズしてみよう。「自由な」 DuckDuckGo もステキだけど、ここはみんな大好き Google に変えてみよう。 カスタマイズ用の変数が用意されているので、次のようにするだけで検索エンジンを Google にできる。 (setq eww-search-prefix "https://www.google.co.jp/search?q=") そして、Google で「雑文発散」を検索してみた結果はこうなった。 左側の「Search Op
この記事はジェット推進研究所(JPL)におけるLispの盛衰について、私の(しかもかなり偏った)個人的見地から書きました。JPLの所員としての立場で書いているのではなく、JPLの公的な立場を代弁するものでもないことをお断りしておきます(これについては読み進めていただければ分かります)。 1988-1991 ロボット工学の時代 私は1988年にJPLに入所し、自律移動ロボットの人工知能(AI)グループに配属されました。当時は今と違って政府の財源から資金が潤沢に流入していました。「AIの冬」が始まりかけていましたが、まだJPLには到達していませんでした。研究所の技術動向は最先端から数年遅れになる傾向があるようです。 当時のJPLはマーズ・ローバー・サンプル・リターン(MRSR)と呼ばれるマーズ・ローバー・ミッションの初期計画段階にありました。あの時代、宇宙ミッションはあらゆる意味で巨大でした。
最近Lispの連れション仲間を増やしたいので、いろんな初見の人に「Lispって知ってる?」と質問して回っています。 そこそこアンテナのある技術者ならLispというのがプログラミング言語の一派を意味しており、それが主に大量のカッコで構成されていることは知っているようなのですが、なんか拒否反応が多いんですよね。 拒否反応というのが、まあ、だいたい 「カッコが多すぎて気がおかしくなる」 「私の人生は大量のカッコに対応するには短すぎる」 「大学でやったけどカッコ死ね。」 みたいなHTML初心者がタグのネストに敗北したみたいな感想ですね…。 まあ、パッと見てそういいたくなる気持ちは分かるんですが、それ自体がよくあるLispに対する誤解と言わざるを得ないです。 事実、Lispプログラミングは大量のカッコを相手にするのですが、誰もカッコの個数なんて見ていません。 Lispのプログラムの構造を読むときは、
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く