sm支付宝号购买【☆出售网址:fk578。com☆】【☆购买网址:fk578。com☆】抖音小号自动发号
![SECDマシン 実装と動きとその他もろもろについて](https://cdn-ak-scissors.b.st-hatena.com/image/square/3af733281f02e9bb909018773553ab561dbc138d/height=288;version=1;width=512/https%3A%2F%2Fcdn.slidesharecdn.com%2Fss_thumbnails%2F2020-10-29-secd-machine-201029120601-thumbnail.jpg%3Fwidth%3D640%26height%3D640%26fit%3Dbounds)
新型コロナウイルスの感染がまたも拡大し、外出を控える人が増えてきた。自宅で何かできることを探している人は多いはずだ。中にはプログラミングを始めてみたい人もいるだろう。あるいは、プログラミングに関する新しい技術を身に付けたいソフトウエアエンジニアもいるかもしれない。 プログラミングを学ぶ際には、プログラミング言語の選択が重要になってくる。言語が異なると、プログラムの書き方が変わってくるからだ。 では、どの言語を学べばよいだろうか。最近はPython(パイソン)が人気で、Go(ゴー)やRust(ラスト)といった低レイヤーに強い言語も注目を集めている。ただ、「人と同じような言語を学ぶのはつまらない」と考える人もいるかもしれない。 そうした人にぜひお勧めしたいのが「Lisp(リスプ)」だ。数ある言語の中でも独自の存在感を放つ。現役バリバリでソフトウエアを開発しているプログラマーでも「いつかはLis
はじめに 最近社内でSICPの勉強会を行っています。 SICPでは、教材としてLISP処理系の一つであるschemeを採用しており、勉強する時にはschemeを動かしながら例題の動作確認や課題を行っていきます。 Emacs + Gaucheを用いて学習を進めていくパターンが多い印象ですが、Emacsに慣れていない人にとっては、まずEmacsの操作を満足にできるようになるまでに高いハードルがあります。 今回は、Emacsの代わりにJupyterを用いてScheme処理系を動かし、その動作を確認する方法を紹介します。 Jupyterについて Jupyterとは、簡単にいってしまうとブラウザ上で動作するREPL環境 + メモ帳です。 以下の画面のように、コードをその場で実行し、その結果をその場で見ることができます。 また、コードの他にmarkdown形式で文章を追加することもできるので、コードと
Chez Scheme Chez Scheme is both a programming language and an implementation of that language, with supporting tools and documentation. As a superset of the language described in the Revised6 Report on the Algorithmic Language Scheme (R6RS), Chez Scheme supports all standard features of Scheme, including first-class procedures, proper treatment of tail calls, continuations, user-defined records, l
A lambda calculus for quantum computation Scheme simulator This page provides a simulator for a functional language based on Scheme for expressing and simulating quantum algorithms. Example code implementing some simple quantum algorithms is provided. For the theory, see my papers A lambda calculus for quantum computation - André van Tonder. Quantum computation, categorical semantics and linear lo
(本文p292。) ゲームエンジン・アーキテクチャはノーティドッグ(NDI)のエンジニアが書いたゲーム開発のかなり広範なトピックを扱った書籍の日本語訳。 http://www.sbcr.jp/products/4797377484.html http://minahito.hatenablog.com/entry/2015/03/28/183822 https://timagire.wordpress.com/2015/04/02/ NDIにはかなり深刻なLisp文化が有る: http://d.hatena.ne.jp/mjt/20131027/p1 RacketCon 2013でのプレゼン https://twitter.com/okonomiyonda/status/479429000842850304 GOAL(彼らの歴史的なLispバリアント言語)のドキュメント表紙画像 この本はか
かんたんな証明チェッカーを作ってみたいと思います. 関数はたったの7個です. まず1個目の関数が12,000行あります,なんてことはありません :P. 証明パズルとして楽しめると思います. この証明チェッカーは,David Gries さんと Fred B. Schneider さんによる本 A Logical Approach to Discrete Math (邦訳:コンピュータのための数学)を見ながら作りました. 公理と定理の番号はすべて本に合わせてあります. 等式論理 対象とする論理体系は等式論理とします. かんたんにするために命題だけを扱うことにして,述語や量化記号は扱いません. つまり命題等式論理ということです. もしかしたら等式論理というのはあまりなじみがないかもしれません. 正確なところは本などを見ていただくとして,しろうとなりに説明をすると,等号だけが述語で,それに関する
About BiwaScheme is a Scheme interpreter written in JavaScript. Try it now Download biwascheme-0.8.0.js biwascheme-0.8.0-min.js Older versions are on github. Example <script src="biwascheme.js"> (console-log "Hello, world!") </script> Demo Picture language (from SICP) BiwaScheme for Mobile Games Hockey (a pong-like game) Dobon (a card game) 15 puzzle Tetris-like example Development REPL with IL in
オランダの生活、自身が行っているSagittarius Schemeの開発日誌、 その他雑多なことをつづってます。 世の中に星の数ほどSchemeの処理系はあれど、その選び方についてはあまり言及されていない気がするので、目的、環境別くらいの処理系の選び方を書いてみようと思う。僕の知っている処理系の話になるのでかなり限定されたものになることには目をつぶってほしい。また、基本リリースされているバージョンについてのみ言及なので、この処理系の開発版はサポートしているというのは割愛されている可能性があることにも注意してほしい。さらには、少なくともRnRS(R5RS以降)に準拠している処理系のみの言及であることも留意してほしい。 目的別 【SICP用】 どれでもいいw 環境別辺りを参照して適当に選んでw 【R7RS準拠の処理系を使いたい】 現状でChibi SchemeとSagittariusのみがほ
Features: Proper tail-recursion First-class continuations with even dynamic-wind Boolean, string, number, char, and vector data types (no complex / rational numbers) Limited syntax-rules transformer (written in Scheme; no nested ellipsis ('...') and vectors support) Optional just-in-time compilation to javascript (does not support continuations; library can be pre-compiled with (compile-lib) and i
Recordings of the talks at RacketCon 2013: http://con.racket-lang.org/2013/
GNU Make 4.0 released GNU Make 4.0がリリースされた。 今回のリリースでは、GNU MakeはSchemeの実装であるGNU Guileを組み込んだ。これにより、Makefileの中でSchemeが書けるようになる。 その機能は、GNU Make ManualのGuile Functionの項目で説明されている。まだ、オンライン版のGNU Make Manualが2010年から更新されていないので、コミット時のドキュメントの差分のリンクする。 8.13 The `guile' Function 具体的な組み込み方法としては、make側にguileという関数が追加され、この引数に文字列を与えると、SchemeとしてGuileで処理されるようになる。おそらく、このように。 Hello.o : $(guile (string-append "hello" ".c"
確かに。letとletrecの2種類あるのはなんで? letとletrecの違い そもそもletrecのrecは再帰のこと。なので下のように再帰する定義を書くことができる。 (letrec ((fact (^n (if (zero? n) 1 (* n (fact (- n 1))))))) (fact 10)) 逆にletは非再帰なのでこうは書けない。 代わりに (let ((x 1)) (let ((x (+ x 1))) x)) のように以前の定義をshadowingすることができる。 そしてこれが非再帰のletが必要な理由みたい。 どこでshadowingが必要か ある identifier を、その値を使いつつ再定義する際に必要です {中略} リファレンス参照した上で、結果を同じ identifier に束縛しています。{中略}間違って元のリファレンスセルを参照できなくなりますか
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く