タグ

gaucheに関するlizyのブックマーク (14)

  • 仕事でLispを使うこと | gihyo.jp

    SchemeというLisp系言語の処理系の一つ「Gauche」の作者である川合史朗氏によるブログ記事です。「⁠Gaucheクックブック」などで知られ、Lispのヘビーユーザである植山類氏のGoogle Buzz「Lispはなんとなくすごそうというイメージがあるけど、実際にはそれほどでもない」に対し、2回に渡ってリプライ記事を書いています。 元記事での「Lispを使いたいという欲求が自分の幅を狭める危険性を帯びている」と注意を喚起しているのに対して同意を示しつつ、Lispがほかの言語と比較して優位性があるのはどの分野なのかについて考察しています。 川合氏は(Common)Lispの強みとして、「⁠抽象度の非常に高いところから非常に低いところまでを単一の言語でカバーしているところ」を挙げています。つまり、RubyなどのLL(Lightweight Language)が得意とする簡易的処理をすば

    仕事でLispを使うこと | gihyo.jp
  • Island Life - 仕事でLispを使うこと

    About 南の島のプログラマ。 たまに役者。 Practical Schemeの主。 WiLiKi:Shiro 最近のエントリ 無限cxr高校受験Defense振り返ってみると2019年は色々学んで楽...覚えるより忘れる方が難しい(こともある)眼鏡のつると3DプリンタIris Klein Acting ClassSAG-AFTRA conservatory: Voice Acting創作活動って自分を晒け出さねばならないと...ループを使わずに1から100までMore... 最近のコメント shiro on 歳を取ると時間が速く過ぎるのは、新しいことに挑戦しないから? (2023/03/14)1357 on 歳を取ると時間が速く過ぎるのは、新しいことに挑戦しないから? (2023/03/01)ベアトリーチェ on ハイポハイポハイポのシューリンガン (2022/04/02)ベアトリーチ

    Island Life - 仕事でLispを使うこと
  • 長文日記

  • GaucheでRDBプログラミング

    Lispの一種であるScheme。いくつかある処理系の中でも気軽にスクリプトを書けるGaucheでLispの世界を体験してみよう(編集部) 皆さま、明けましておめでとうございます。年もよろしくお願いいたします。 さて、今回はGaucheを使って、より大きなプログラムを書いていきます。Lispプログラミングの例題として、パズルのような難しいアルゴリズムを使ったプログラムもありますが、多くの読者の方はリレーショナルデータベース(RDB)をベースにしたWebアプリケーションを作られていると思います。 そこで、今回と次回でWebアプリを書いてみたいと思います。今回はRDBプログラミングを中心に学んでいきます。 Gaucheのデータ型とオブジェクトシステム 今回の主題であるWebプログラミングに入る前に、少しGaucheの基的な事柄について学んでおきます。 GaucheはLispであり、関数が主

    GaucheでRDBプログラミング
  • HaskellとGaucheの普及目指す「HOP推進プロジェクト」,イベントや有償サポート提供へ

    タイムインターメディアは2008年8月5日,次世代プログラミング言語「Haskell(ハスケル)」および「Gauche(ゴーシュ)」の普及を目的とした「HOP(Higher-Order Programming:高階プログラミング) 推進プロジェクト」を開始すると発表した。利用促進イベントの開催や開発ツールの開発提供,コンサルティング・サービスを提供する。 Haskellは関数型と呼ばれるプログラミング言語。JavaCOBOLなどがプログラムを手続きの集積として記述するのに対し,Haskellではプログラムを関数の集積として記述する(関連記事:連載「物のプログラマはHaskellを使う」)。Haskellで実装されたアプリケーションには,Perl6の実装であるPugsや分散バージョン管理システムのdarcsなどがある。 Gaucheはハワイ在住の技術者である川合史朗氏が開発したSchem

    HaskellとGaucheの普及目指す「HOP推進プロジェクト」,イベントや有償サポート提供へ
  • Gaucheで超高生産性Webアプリ!

    ドライバのインストール さて、前回までで、Gaucheによる簡単なプログラミングについて解説してきました。今回から2回にわたって、GaucheによるWebアプリケーションの作成について解説していきます。 はじめに、前回インストールしたSQLite3用データベースドライバですが、第3回専用のドライバとなっております。今回の記事用に修正を加えた最新ドライバを作成しましたので、再インストールしてください(ダウンロードファイル7441.zip/32.4 KB)。インストール手順は前回と同じとなります。また、今回のソースコードもダウンロードが可能です(7442.zip/816 B)。 今回は、生産性を上げるためのテンプレートを紹介し、テンプレートで使われている関数とマクロについて解説していきます。 テンプレートエンジン さて、前回のWebアプリケーションでは、HTMLをプログラムの中で組み立てていま

  • [Think IT] 第3回:簡単Webプログラミング! (1/3)

    SQLite3インストール! Gaucheは、RDB(リレーショナルデータベース)に依存しないデータベースインタフェース(dbi)モジュールを持っています。各RDB用にデータベースドライバ(dbd)モジュールを用意することで、GaucheからRDBを扱えます、現在、MySQL、PostgreSQLSQLite3などのデータベースドライバモジュールがあります。 今回使うSQLite(http://www.sqlite.org/)は組み込み型RDBで、サーバ管理などが不要なため、扱いやすいのが特徴です。 Linuxでは、パッケージ管理ソフト(apt、yum、rpmなど)でインストールするのが良いでしょう。Mac OS/XにはSQLite3がプリインストールされてます。 Windows(cygwin)では、第1回でGaucheをインストールしたcygwinインストーラーを使ってインストールでき

  • 超!Gauche入門

    簡単なプログラムを書いてみよう! Gauche(Lisp/Scheme)はとてもシンプルなプログラミング言語です。まずは乱数を使いジャンケンの手(Guu、Choki、Pa)を表示するプログラムを書いてみましょう。リスト1は比較ためにJavaで同じプログラムを書いたものです。リスト2がGaucheのプログラムです。 Gaucheの文法 まずは、Gaucheのプログラムの文法を簡単に説明していきましょう。 数値0.33や文字列"Guu"はJavaと同じくリテラルです。()で括られたものは式で、カッコの中の最初の要素は関数名、それ以外は関数への引数になります。 ( また、;からはじまる行はコメントになります。ではリスト2のプログラムについて上から解説していきましょう。 2行目はsrfi-27という乱数のライブラリを読み込んでいます。4~7行目はguu-choki-paという名前の関数を定義してい

  • Gaucheをはじめてみませんか?

    Gaucheとは 連載では、今注目のプログラミング言語「Gauche」について解説しながら、簡単なWebアプリを作っていきます。Gaucheとは、ハワイ在住の日ハッカー「川合 史朗」さんが作ったLispの一種である、Schemeの処理系です。オープンソースで開発されています。 Gaucheの特徴は、Perlのように気軽に使える軽い処理系でありながら、正規表現、CommonLisp風オブジェクトシステムなど、Scheme標準にはない拡張機能や豊富なライブラリを持ち、実用的なプログラミングが行える点です。 最近「Gauche」に関するも出版され、「第4回:都内大手3書店の3月ベスト3発表!(http://www.thinkit.co.jp/article/49/4/2.html)」でも紹介されているように売れ行きも好評です。それは、なぜでしょうか? 筆者はLisp、特にSchemeの持

  • Route 477(2008-03-09)

    ■ [biwascheme][event] gauche.gongでLTしました やっぱりSchemeのイベントでデモすると反応が大きくていいなあ,という. スライド 右上の★ボタンを押すとREPLが開いたりするよ.(このためにevalとwrite-to-stringとhtml-escapeを実装するなどした) このプレゼンツール自体もBiwaSchemeで書かれています.(ソース) BiwaSchemeのダウンロードはこちらからどうぞ. ■ [event][scheme] 第2回gauche.nightログ おまけつき 注意 誤字は仕様です 全く見直ししていないため,内容には0個以上の誤りが含まれています.取り扱い注意 「fullでないcontinuation」ってどういうものなのか誰か教えてください 「プログラミングGauche」ができるまで (ログ取れず) 自己紹介 「リリカルLis

    Route 477(2008-03-09)
  • oreilly.co.jp -- Online Catalog: プログラミングGauche

    Gauche(ゴーシュ)は、プログラミング言語Schemeの処理系のなかでもきわめて実用的で軽快な処理系です。豊富なライブラリが用意され、スクリプト言語処理系として手軽に扱うことができます。書は、Schemeの初心者を対象に、Gaucheの基礎からプログラミングの実際までを詳しく解説。Gaucheの開発環境でプログラマがどのように考え、作業していくのかを、順を追って理解できます。書によって、SchemeやGaucheのコードを読み解く準備ができ、実用的なGaucheプログラミングへの第一歩を踏み出せることでしょう。 はじめに 第1部 予備知識 1章 LispとScheme 1.1 Lispの起源 1.2 S式と前置記法 1.3 Scheme 1.4 Gauche 2章 Gaucheの特徴 3章 Gaucheの設計思想や誕生の背景 3.1 Perlの影響 3.2 Common Lispの

    oreilly.co.jp -- Online Catalog: プログラミングGauche
  • IT NEWS

    1:5ch名無し民2022/06/14(火) 15:46:19.23ID:CAP_USERイーロン・マスク氏のツイート「日はいずれ消滅する」がNHKで取り上げられるなど国内で大きなニュースとなった。人口減少の日はこのまま衰退の一途をたどるしかないのか?  そこに異を唱えるのがマスク氏と同じく実 【楽天・三木谷「日消滅を避けるために移民を受け入れるべき」】の続きを読む

    IT NEWS
  • Gauche(Scheme) でデバッグをする4つの方法 - higepon blog

    Gauche でコードを書いているときにコードが意図どおりに動かないことがあります。そのような場合にデバッグする方法を4つ紹介します。 前提 まず Gauche はリリースされている最新版を使った方が良いでしょう。Linuxのディストリビューションによってはパッケージが古い場合あります。 またScheme は関数型言語なので、デバッグの単位は関数(手続き)ごとに行うことが多いです。一つ一つの手続きが意図どおり動いているのか?を調べながら進めるのが基になります。 方法1 print デバッグ Gauche には今のところデバッガがありませんから基的には print デバッグがメインとなります。単純な print デバッグから見ていきましょう。 以下のような sum という手続きで print デバッグしてみましょう。 (define (sum n) (if (= n 1) 1 (+ n

    Gauche(Scheme) でデバッグをする4つの方法 - higepon blog
  • Scheme処理系 Gauche の最適化まとめ前編 - higepon blog

    shiro さんが開発されている Scheme 処理系 Gauche 0.8.12 の最適化処理を勉強のためにまとめました。 よく Gauche のコードは宝の山だと聞きますが、その一端を分かってもらえるとうれしいです。 基的にGaucheのコードのコメントをまとめただけです。 Scheme のソースコードと簡単な英語が読める人はこのまとめを読むより src/compile.scm を直接読んだ方が正確に理解できると思います。 前提1 コンパイルと実行の流れ Gauche はスタックマシン型の仮想マシンでコードを実行します。 そのため Scheme のコードはスタックマシンで実行可能なコードにコンパイルされます。 つまり Scheme のコード →(コンパイル) マシンコード →(実行) 結果 という流れでコードが実行されることになります。 今回取り上げる、最適化は上の流れの「コンパイル

    Scheme処理系 Gauche の最適化まとめ前編 - higepon blog
  • 1