タグ

lispに関するotakumesiのブックマーク (33)

  • Worse Is Better

    Worse Is Better(悪いほうが良い) Richard P. Gabriel (Original article: Worse Is Better. Japanese translation by Hisashi Morita.) "worse is better"として知られる考え方では、ソフトウェアを作る際には(おそらく他の分野でも同様に)最小限のものをまず作り、そして必要に応じて育てるほうがよいとされる。Christopher Alexander*なら"piecemeal growth"(一口分ずつの成長)と呼んだかもしれない。その考えがどのように進化したかを話そう。 1984から1994まで、私は"Lucid, Inc."というLispを生業とする会社を所有していた。1989の時点で、Lispビジネスが好調ではないことは明らかだった。ひとつにはAIを生業とする会社が泥沼に

  • GitHub - carp-lang/Carp: A statically typed lisp, without a GC, for real-time applications.

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - carp-lang/Carp: A statically typed lisp, without a GC, for real-time applications.
  • Common Lispでオブジェクト指向プログラミング - hiyosi's blog

    Common LispにはCLOS(Common Lisp Object System)がある。 今回はCommon Lispでオブジェクト指向プログラミングの方法を整理します。わかりやすいようにRubyでの例も書いてみます。 クラス定義Common Lispにおけるクラス定義はDEFCLASSマクロを使って定義します。 (defclass name (direct-superclass-name*) (slot-specifier*)) 変数の定義はスロット指定子を使って定義します。(slot-specifier*) 実際に定義してみるとこんな感じ。 Common Lisp (defclass city () (id name country-code district population)) Ruby class City attr_accessor :id, :name, :cou

    Common Lispでオブジェクト指向プログラミング - hiyosi's blog
  • Common Lisp基礎文法最速マスター - Common LISP users jp

    Common Lisp基礎文法最速マスター逆引きCL:Common Lisp基礎文法最速マスターへ移動しました Last modified : 2018/06/24 16:06:56 JSTPowerd by WiLiKi 0.6.1 on Gauche 0.9.10

  • Emacs による Lisp Hacking

    SLIME の公式ページ から入手可能です.現在は ArmedBearCL, AllegroCL, CLISP , Corman Lisp, CMUCL, ECL, LispWorks, OpenMCL, SBCL, Scieneer Common Lisp といった処理系に対応.( Scheme48 に対応した SLIME48 もあります) 別プロセスで起動した lisp 処理系とソケット経由で通信する 関数の引数表示 シンボルの補完機能 ( **例:** ``m-v-b TAB => multiple-value-bind`` ) コマンド一発で HyperSpec が引ける コンパイラの note, warning, error をソース上で示してくれる(下線が引かれて,カーソルを合わせると詳細がでる) 親切なデバッガ(バックトレース上でカーソルを合せると詳細が表示されたりとか) 現

  • CodeIQについてのお知らせ

    2018年4月25日をもちまして、 『CodeIQ』のプログラミング腕試しサービス、年収確約スカウトサービスは、 ITエンジニアのための年収確約スカウトサービス『moffers by CodeIQ』https://moffers.jp/ へ一化いたしました。 これまで多くのITエンジニアの方に『CodeIQ』をご利用いただきまして、 改めて心より深く御礼申し上げます。 また、エンジニアのためのWebマガジン「CodeIQ MAGAZINE」は、 リクナビNEXTジャーナル( https://next.rikunabi.com/journal/ )に一部の記事の移行を予定しております。 今後は『moffers by CodeIQ』にて、 ITエンジニアの皆様のより良い転職をサポートするために、より一層努めてまいりますので、 引き続きご愛顧のほど何卒よろしくお願い申し上げます。 また、Cod

    CodeIQについてのお知らせ
    otakumesi
    otakumesi 2016/02/15
    いきなりLispが出てきた
  • On Lispとか読んでRubyとLispの違いをちょっと考えた - yarbの日記

    全400ページのうち3/4がマクロの説明に当てられている、Paul Grahamの「On Lisp」を8割ほど読んだ。冒頭のCommon Lisp入門で紹介されている標準関数やユーティリティ関数のネーミングのひどさ(やたらと数字でサフィックス付けるとか、rplacaとかってどうよ?)や、破壊的操作をする関数の挙動の不統一感に、「これならRubyのほうがいいんじゃね?」とか思ったし、with系マクロも、「なんだRubyのブロックでいいじゃん」とか思ったりもしたけど、確かに読み進めると全然違う世界が垣間見えてきた気がする。 CLOSの説明の導入編に当たるところで、Paul Grahamは素のLispの上にオブジェクトシステムを作ってみせる。これが想像以上に簡単な話で、そうか、なるほど、ハッシュテーブルとクロージャがあれば、大抵のことはできるのだと、ちょっと驚いた。継承のモデルにしたって、メソッ

    On Lispとか読んでRubyとLispの違いをちょっと考えた - yarbの日記
  • オブジェクト指向について考えたいので、Lispでオブジェクトもどきみたいなものを実装してみる - Line 1: Error: Invalid Blog('by Esehara' )

    はじめに 最近になって、「関数型とは何か」みたいな文章が増えている。それらの文章は玉石混交しているし、技術的ではない部分も多いので、自嘲の意味で「ポエム」と自ら呼んでいたりする。その関係もあってか、手元にある『On Lisp』と『実用Common Lisp』にある「Lispによるオブジェクト指向」に関する章を読んだりしていた。そこで、考えたことをメモしておく。 以下、利用している処理系はRacket languageを想定している。 Lispでオブジェクト指向っぽいものを作ってみる この項目はLispによってオブジェクト指向を作るための道筋みたいなものである。もし、Lispに興味が無ければ、一挙に飛ばしてもいい。 はじまり よく言われているように、「関数型」と呼ばれる言語の特徴として「副作用」をできるだけ排除する傾向にある、ということはできる。副作用とは、ある変数などにおいて変化を発生させ

    オブジェクト指向について考えたいので、Lispでオブジェクトもどきみたいなものを実装してみる - Line 1: Error: Invalid Blog('by Esehara' )
  • Amazon.co.jp: やさしいLispの作り方: C言語で作るミニミニLisp処理系: 笹川賢一: Digital Ebook Purchas

    Amazon.co.jp: やさしいLispの作り方: C言語で作るミニミニLisp処理系: 笹川賢一: Digital Ebook Purchas
  • プログラミングからUXまで、僕がこれまで、読んできた書籍をピックアップする - nobkzのブログ

    さて、僕のキャリアとしてはプログラミングから始まり、CTOを得て、UXデザイナになったわけだが、そこで読んできた書籍をなんとなく紹介しておこうと思う。 なんとなく振りかえりである。 プログラミング やっぱり、いちばん読んだとしてはこれらが一番多い。 lisp系 Lispの入門をするなら、この一冊をまずお勧めする。非常に読みやすいと思うし、Lispエイリアンが可愛くなる。Clojureだろうが、Schemeだろうが、Common Lispをやろうが、「Lisp」のなにがしを始めようとするならば、とりあえずこの一冊をおすすめしたい。 Common LispのCLOSを勉強するために、購入した書籍である。MOPについていろいろと知れて面白かった。 最近出ている、実はまだ全部は読み切れてないが、おもしろい。 Lispと言えばマクロだろう。マクロについて楽しめる書籍である。 まぁ、Lisperで

    プログラミングからUXまで、僕がこれまで、読んできた書籍をピックアップする - nobkzのブログ
  • VOYAGE GROUP エンジニアブログ : 自分の周りに居る凄腕プログラマーが実際に読んでいる本

    2011年11月08日10:22 カテゴリ 自分の周りに居る凄腕プログラマーが実際に読んでいる こんにちわ、VOYAGE GROUPでエンジニアをしている伊織といいます。 RubyKaigi2010/2011でスタッフをさせて貰ったりしています。 他にも渋谷rbランチなどに顔を出させて貰っています。 弊社の先輩エンジニアは勿論の事、RubyKaigiのスタッフをやらせてもらったりShibuyarblunchやLispコミュニティでうろちょろしているお陰で僕の周りには凄いプログラマーが沢山います。そこで、周りの凄腕プログラマーが実際に読んで「良かった」と言っていた技術書を幾つか挙げてみたいと思います。自分で手を動かしてやったは僕の感想も添えます。 計算機プログラムの構造と解釈 クチコミを見る 有名な魔術師。MITで長年教科書として使われてきたです。今はPythonなので違う筈。今やっ

  • Programming in Emacs Lisp: Programming in Emacs Lisp

    この Info ファイルは、Programming in Emacs Lisp (An introduction) 1.05 版の日語訳です。翻訳元のファイルは GNU の配布の中に含まれている `emacs-lisp-intro-1.05.tar.gz' です。

  • 弱LisperがMITでSICP(シクピー)を受講した結果 - Qiita

    SICPとは何か Structure and Interpretation of Computer Programsという古めかしい表紙のをご存知でしょうか? これはもともと、マサチューセッツ工科大学(Massachusetts Institute of Technologies; MIT)の電気工学および計算機科学(Electrical Engineering & Computer Science; EECS)系の学部の授業の一目として提供されていた同名の授業から発生した教科書です。教科書は無料公開されています。 HTML版 http://mitpress.mit.edu/sicp/full-text/book/book.html Kindle版 https://github.com/jonathanpatt/sicp-kindle PDF版 https://github.com/s

    弱LisperがMITでSICP(シクピー)を受講した結果 - Qiita
  • Lispの悟りが分かっちゃう新春ポエム - Qiita

    こんにちは、悟っちゃったLisperです。 皆さんにLispの悟りとは何かを悟らせたいと悟ったので、今回はLispの悟りを解説したいと思います。 まず、Lispの悟りが良く口にされるようになったのは、エリック・レイモンド氏が無責任に適当なことを書いたからです。 ハッカーになろう (How To Become A Hacker) LISP は、それをモノにしたときのすばらしい悟り体験のために勉強しましょう。 この体験は、その後の人生でよりよいプログラマーとなる手助けとなるはずです。 たとえ、実際には LISP そのものをあまり使わなくても。 彼の言う悟りが結局なんのことなのかは不明ですが、悟りですので、理解できなくても良いのです。 ちなみに、今回述べることは、レイモンド氏の主張とも矛盾しないものです。 TL;TR Lispの悟りを感覚として理解するのは非常に簡単です。 貴方は、データ処理を頼

    Lispの悟りが分かっちゃう新春ポエム - Qiita
  • init-loader.el と package.el を導入して快適 Emacs ライフ - Qiita

    今まで(恥ずかしながら)適当だった Emacs の設定を改革したらとても快適だったので紹介します 今回紹介したいのは init-loader.el package.el です 今まで .emacs に適当に設定を書いていたので以下の様な問題で悩んでいました 環境依存(具体的には Mac と Ubuntu)な設定を分離出来ないので環境構築に手作業が発生する 設定を追加しても上の事情で各々の環境に手作業で導入する必要がある ということで init-loader.el の出番です ~/.emacs.d/site-lisp/ 以下に init-loader.el を置いて ~/.emacs.d/init.el に ;; ~/.emacs.d/site-lisp 以下全部読み込み (let ((default-directory (expand-file-name "~/.emacs.d/site-

    init-loader.el と package.el を導入して快適 Emacs ライフ - Qiita
  • なぜLispなのか?― “データ” と “コード” | POSTD

    たくさんの人から 私が昨日Hacker Newsに書いたコメント についてもっと詳しく説明してほしいというメッセージをいただきました。例えば以下のような質問です。 Lispは単なる表記法の1つにすぎないと私は考えますが、間違っているでしょうか? Lispのコードをデータ構造にマッチさせるのがなぜそんなに重要なことなのか理解できません。(おそらく、そのマッチさせるという行為がなぜLispを使うのかという答えになるのだとは思いますが。)私はマクロの大事な何かを見落としているでしょうか?  何か私が気付いていないことがあるでしょうか? この質問に答えるには少し長くなりそうだったので、ブログに投稿することにしました。以下が私の答えです。 手短に言えば、Lispは 単なる 表記法の1つではなく、プログラミングとは 何か という考え方を根的に覆すものなのです。プログラミングに関する主流な考え方は、「

    なぜLispなのか?― “データ” と “コード” | POSTD
  • Emacs Lisp で末尾再帰 - わからん

    ネットや書籍で末尾再帰の勉強をしました。じつは、過去にも Gauche で取り組んでいます。 プログラミング Gauche (6) 練習問題 末尾再帰版の reverse 懐かしいなー。meadow 時代か。。さて、末尾再帰でコードを書くというのは、発想が Lisp 的という以外にも、次のようなメリットがあるようです。 再帰で呼び出した結果がそのまま関数の戻り値になるため、呼び出し元の情報を保持しなくても、計算が進められる。したがってメモリ効率がよい。 Emacs Lisp で、階乗計算の関数をいろいろ書いてみました。 ▼ 普通の再帰 (if版、cond版) (defun fact-a (n) (if (zerop n) 1 (* n (fact-a (- n 1))))) (fact-a 3) => 6 (defun fact-b (n) (cond ((zerop n) 1) (t (

  • Land of Lisp - ぱたへね

    漫画が独特の味を出しているCommon Lispの、Land of Lispを読みました。とても面白かったので紹介します。 の内容 ゲームを作りながら、Common Lispや関数型プログラミングについて学べるです。他の「ゲームで学ぶ・・・」系のと違うのは、既存のゲームをCommon Lispで実装していくので、できあがったゲームがそれなりに面白い事です。ゲームのI/Fは基CUIですが、一部の出力に関してはgraphvizやsvgを使ってグラフィカルに出力されていて面白くなっています。Common Lispの基的な文法以外にも、Functional programmingゲームAI、Webサーバー、Lazy Programmingと扱っているトピックは広いです。 基的なスタンスが「Lispサイコー」なので、そういうのが好きな人も十分楽しめると思います。 ゲームの紹介 いく

    Land of Lisp - ぱたへね
  • EmacsでCommon Lisp - やろーじだい

    追記 2017/7/26 こちらの記事は大変古く全く読む価値が無いため, Emacs の環境構築のためには別な記事を読むべきです。最近書かれたものでパッと探してみつけたのを貼っておきます。 eshamster.hatenablog.com 良く目を通していませんが,Roswell などを使って導入するのが楽なためそれを使ったもので導入するべきだと思います。 EmacsでCommon Lisp ご挨拶 こんにちは。やほーです。 私は大学が春休みということで、外国に行きました。 ここです … 題 私は今回Common Lispの勉強をしました。 理由は、 関数型言語に興味があった Land of Lispを買ってみたらCommon Lispだった 調べてみるとやりたいと考えている研究の分野で役に立ちそう 楽しそう と言った理由です。 Common Lispはlispの方言の一つで、Schem

    EmacsでCommon Lisp - やろーじだい
  • 割と本気で家庭用Slack Botを作ってみた - 八発白中

    僕はと二人暮らしをしています。かつてはLINEを使って普段のやり取りをしていたのですが、一年ほど前からSlackを使い始めました。 Slackの良いところはハッカビリティが高いところです。Google Calendarなど他のサービスと連携することができるし、IFTTTを使って多少凝ったこともできます。 IFTTT時代 IFTTTを使えば天気予報をSlackチャンネルに流せます。 英語というのは不意ですが、一応今日の天気はわかります。英語が読めなくてもアイコンを見れば、雨が降りそうな気がするってくらいはわかります。 しかし、しばらく運用しているうちに疑念が。 天気予報が当たらない。 IFTTTが連携している天気予報は「The Weather Channel」の情報なのですが、これが日の気象庁の予想と違っていて全然当たらない。 ちなみにiOS8から標準の天気アプリが提供している予報もこ

    割と本気で家庭用Slack Botを作ってみた - 八発白中