元スレEmacs Part 31
emacs覧 / PC版 /みんなの評価 : ○
551 = :
http://git.or.cz/gitwiki/GitFaq
Why isn't Git preserving modification time on files?
552 = :
>>551
ちなみに、これ
http://kerneltrap.org/mailarchive/git/2007/3/1/240167/thread#mid-240167
でもLinusが説明してるが、主にコンパイラーのタイムスタンプの依存による
(たまにある)不祥事が主な理由。
それを避けたいのはわかるが、少なくともオプションとしてつけるべきなんだよね。
svn のオプションとしてタイムスタンプを復元できるようになってる。
cvs も bzr はデフォルトでタイムスタンプを所持してる。
そういった妥協ができずに相手を貶すだけで済ませてしまう悪い意味の "馬鹿" が Linus。
553 = :
RCSにタイスタは不要、っていうのが90年代にとっくに議論されつくした論争の結論なんだけどね。
554 = :
どうみても悪い意味の馬鹿はタイスタ厨のほう
555 = :
>>553
で、お前にとっては RCS の方が人間様より偉いのか? (笑)
"人間にとって" は有用。これ大事な。
556 = :
>>555
タイスタこそが神であり、帝国である、…と?
557 = :
>>556
で、>>555のどこをどう読んだら
タイムスタンプ > 人間
と解釈できるんだ?
558 = :
タイムスタンプが要らんって奴の意見を聞きたいんだけど。
559 = :
gitの話はよそでやりなよ。
560 = :
AAA 123
とバッファにある状態で、M-x replace-regexp で
\(.*\) \(.*\) を zzz \2 \1 に置換すると
ZZZ 123 AAA
になっちゃうのですが、zzz を大文字にしない方法は
ありますでしょうか?
562 = :
つうか、その機能もともといらなくね?
結構うっとおしい。
563 = :
UC, lc, Cap のどれも適切に痴漢する機能なんだから
外人がうっとおしいなんて思うはずがない
564 = :
置換は犯罪です><
565 = :
食いついてくれてありがとう
安心して眠れるよ
566 = :
Emacs使いたくてElispの勉強してるのですが、
S式とは何ですか?リストとどう違うの?
シンボリック式という言葉も出てくるし、これらの違いがよく分かりません。
567 = :
"symbol expression" のことを S 式とか s-exp と書きます。
シンボリック式という用語は使われていないけど、S 式と
同じと考えていいでしょう。
S 式はプログラムやデータの記述方法で、リストは記述された
データのこと。
568 = :
S式のほうが意味が広い。リストはS式の一部。
リストはS式。文字列もS式。数値もS式、だがリストではない。
569 = :
>>567
>>568
ありがとうございます。
リスト⊂S式なのですね。少しイメージが沸きました。
+-×÷と数字で表す式が演算式なら
アトムやリストで表す式をS式と呼ぶ
という感じかな。
570 = :
う~ん、何か勘違いしてるような
571 = :
もう何年もEmacs使っててElispで自分用関数とかも書いてるけど、
S式って言葉を割と最近まで知らなかった。
まあ知らなくてもLispは書ける。
572 = :
俺も
> もう何年もEmacs使っててElispで自分用関数とかも書いてる
けど、S式が未だに理解できない。
M式との対比で理解しようと、何度か調べたり、本を読んだりしたけど、
「結局みんなS式だから」みたいな、略した言葉にを目にしただけで、
自分の中でしっくりこないままで、今日まできている。
難しく考えすぎなのかとも思うけど。
573 = :
M式は別に知らなくてもいいんじゃね。
575 = :
>>573,574
レスthx
そう、まさにその文章を読んだりとかしたけど。
それだと、2chで目にしたりした、
「S式最強」などの発言と結びつかなくて、
あえてそれをS式として名前付けをして、取り出したのがなんでかなーと。
576 = :
最強とかくだらないこと言うやつなんて無視でいいよ。
577 = :
>>575
> あえてそれをS式として名前付けをして、取り出したのがなんでかなーと。
順番が逆。
基本構造はドット対で(..)表記を持ったものがS式と呼ばれ、
それがどんどん便利になっていった。
基本的にデータは全て印字表現を持ち、
統一的にread出来るというのは、
プログラミング言語の世界では今でも特異な存在。
Common Lispは標準機能で、共有表現やループ表現もread可能。
578 = :
>>577
> 基本構造はドット対で(..)表記を持ったものがS式と呼ばれ、
> それがどんどん便利になっていった。
これは単純で受け入れやすい説明です。(私にとって)
> 基本的にデータは全て印字表現を持ち、統一的にread出来るというのは、
これって、S式っていうより、lisp の仕様とか処理系の実装に関わる部分ですよね。
wikipediaのS式の説明を読んだ時
「繋げていくことによって、いろいろな事が表現できます」
と、言っていることと大差ない気がして、当り前過ぎるというか、そのまま過ぎると
思っていたんですが、それで良かったってことですかね。
>>576
> 最強とかくだらないこと言うやつなんて無視でいいよ。
そうですね。ただ、それを読んだ時は、最強とか思い込むだけの
メリットの片鱗なりでもあるんではと…
ここまで書いて、思ったんですが、もしかして
> 基本的にデータは全て印字表現を持ち、統一的にread出来るというのは、
が、symbol に対しての説明?
symbolをLisp実装内でのsymbolと言う意味ではなくて、
象徴作用を表す単語のsymbolとして用いてるってことですか?
つまり、「シンボルはS式である」の`シンボル'で表現されている事が
> 基本的にデータは全て印字表現を持ち、統一的にread出来る
って部分に掛かっている?
こう考えて見たのですが、自信ないので一旦送信します。
579 = :
elisp では「シンボル」=「S式」だよ。
580 = :
>>578
SymbolじゃなくてS式だよ。
S式=Lisp内部データの印字表現。
581 = :
ラムダ計算とかマクロを勉強すれば理解しやすくなるんじゃないかな
あとはM式で実装されたlisp方言とかもあるんでそこら辺の対比とか
582 = :
>>581
便乗だけど………
> あとはM式で実装されたlisp方言
処理系の名前プリーズ
583 = :
半角空白、全角空白、タブ、改行などを視覚化する方法はありますか?
584 = :
S式の味噌はソースコード自体もデータとして解釈できることだよね。
数字が格納されたリストを処理するのと同じ手順で、プログラム自体も
文字列のリストとして取り扱うことができる。
どんなときにそれが便利かというと、ソースコードをデータとして
取り扱うようなプログラムを書くときに便利。ソースコードをデータ
として取り扱うプログラムはどんなものがあるかというと、コンパイラ
とかマクロとかDSLとか。そういうプログラムでは、S式以外の形式だと
結構面倒なことがS式だと割と簡単にできる。
じゃあ、コンパイラなんか書かない人には意味が無いのかと言うと
そういう訳でもない。誰でも、誰かが書いたコンパイラを使っている
わけだし、誰かが書いたマクロを使っている訳だから、間接的に恩恵を
受けているし、自分でマクロを書く方法を覚えれば、ソースコードを
コンパクトに保つことができるようになるよ。
585 = :
M式ってのはS式ではない他のすべての言語を指すの?
メタ情報がデータから独立してソースコードとして表れてるって意味なのかな
586 = :
M式なんてなつかしーなー
昔マッカーシーのLisp 1.5 Programmers's Manualで読んだだけだわ。
と思ってふとぐぐったら、スキャンしてPDFにした奴がころがってるんだね。
ひょっとしてもう著作権切れてるの?
587 = :
原論文読むといいよ。
http://www-formal.stanford.edu/jmc/recursive/node3.html
588 = :
>>585
http://en.wikipedia.org/wiki/M-expression
589 = :
ありがとう
英語で難しかったけど面白かった
学生時代にもっと英語勉強しときゃ良かったとつくづく感じる…
590 = :
低学歴乙
591 = :
>>583
全角空白については分からないが、whitespace-mode が使えるよ。
592 = :
M式って大学で習ったっきりだ
593 = :
やっぱり S と M だから S 式が生き残ったの?
594 = :
意味不明
595 = :
空気悪化
596 = :
Sの彼女が欲しい
597 = :
Sisterの彼女欲しいのか
598 = :
ハッシュテーブルのリテラル表現もあればよかったのに
599 = :
確かに。
600 = :
23.1.50からは、ハッシュテーブルは readable object になったよ。
(setq hosh
#s(hash-table
test equal
data
("moge" "mogemoge"
"hoge" "hogehoge"
"page" "pagepage"
"nuge" "nugenuge")))
みんなの評価 : ○
類似してるかもしれないスレッド
- Emacs Part 36 (1001) - [92%] - 2011/3/1 5:02
- Emacs Part 35 (1001) - [92%] - 2010/9/19 17:01
- Emacs Part 37 (1001) - [92%] - 2011/6/20 19:47
- Emacs Part 38 (1001) - [92%] - 2011/11/29 0:01
- Emacs Part 51 (1005) - [92%] - 2020/3/26 18:30
- Emacs Part 39 (990) - [92%] - 2012/2/9 19:45
- Emacs Part 34 (1001) - [92%] - 2010/6/21 19:45 ○
- Emacs Part 33 (1001) - [92%] - 2010/3/9 20:01 ○
- Emacs Part 32 (1001) - [92%] - 2009/12/20 2:04 ○
- Emacs Part 41 (1001) - [92%] - 2012/12/24 4:15
- Emacs Part 40 (1001) - [84%] - 2012/9/7 0:30
- Emacs Part 53 (989) - [84%] - 2022/12/5 12:45
- Emacs Part 54 (97) - [84%] - 2023/1/25 17:15
- Emacs Part 42 (1001) - [84%] - 2013/6/9 5:15 △
トップメニューへ / →のくす牧場書庫について