はてなキーワード: Lispとは
わかるわかるwww。
とりあえず、Visual Studio などのIDEでできることは、Emacsは使わない。
普通の「テキストエディタ」の用途だけで使えばいいと思えば気も楽になるよ。
たまに Mac, Linux を使うとき、共通のインタフェースで複雑なカスタマイズが可能なエディタがあることがすごく助かってる。
なにしろ1984年生まれで、マウスが普及する前に生まれたエディタだ。
右手をマウスとキーボードで往復することを前提とした左手のC-c, C-v などのコピーペーストのショートカットの概念がない。
これが辛い。すごく他のアプリとかけ離れてて辛い。ここだけは脳にスイッチを作るしかない。英語と日本語おぼえるようなものだな。
あと考えてみたら、今やEmacsで使う時間の 99%は org-mode だなー。あははは。
org-mode で、Python とか Julia とかをデータと統合したりすると、Jypiter なみに柔軟なノートブックが作れる。
あとは、前のコメントにもあったが、 Lisp系とか、マイナーな関数型プログラミング言語 (Agda2とかね) はEmacsしか選択しないなー。
俺は Emacs を使っているが、 まあ時代にそぐわない部分は多いわな。
時代ごとのモダンな機能も取り入れてはいるんだよ。
ただ、パッケージの仕組みなんかはいろんな方法を取り入れてはいかん。
一貫して管理できることに意味があるから。
かといって古めかしいスタイルをいつまでも引きずってても駄目だし、もうどうしようもないね。
そういう人は spacemacs で優勝。
キーバインドも基本的なカーソル移動などを除けば「キーバインドを覚える」ということは実はそれほどしなくていい。
コマンドでも入力できるし、それっぽい単語を入れたら補完候補も出してくれるから。
その内で特に日常的に有用だと思うものを覚えておくなり、自分の好きなキーに割り当てるなりして使うもんなんだよ。
で、なんでまた Emacs を使ってるかというと、使ってるプログラミング言語が Lisp 系だからなんだ。
VSCode は好きなエディタだし Rust とか C++ とかを書くときには使ってるが、 Lisp 系言語の対応はマジでクソ。
かといって自分で拡張を書くほどの根性もないから Emacs が比較的マシという判断なの。
使っているのが Lisp 系だからといって Emacs Lisp が好きというわけでもなく、むしろ現代的な Lisp 系言語を知ってたら Emacs Lisp はクソクソクソのクソとしか思えないんだが、それでも Lisp 系言語に積極的に対応しているエディタとしては今でも Emacs が最強なのだ……。
コンピュータ・サイエンスを専攻してる大学生なんだけど、最近自分自身がエンジニアに向いてないんじゃないかって感じてる。ていうのも、周りの知人が大学生エンジニアとしてバイトしてたりする中で、同じように企業に混じって開発経験を積んでいくことに億劫になってやる気がでないし、流行りの技術に対して貪欲になることができないんだよね。例えばMySQLとかPythonとかが今の流行りだと思うんだけど、上辺だけの浅い知識をすくってるように見えるから冷めた目で見てしまってやる気がでない。結局、作りたいものがないからそうなるんだと思うけど。ただ技術その他の勉強が嫌いかと言われるとそうではなく、プログラミング言語だとC++とかLispとか本気で勉強してある程度理解できるようになったし、数学も統計に興味があってルベーグ積分までやったし、英語も英検準1級を持ってるし(その他もいろいろ勉強してるけど省略)。だからおそらく自分はただ勉強が好きなだけなんだよね。でもそれをもってエンジニアの世界に飛び込もうと思うととたんに億劫になる。だからただ自分の知的好奇心を満たすのが面白いだけでエンジニアとかにはさほど向いてないんだろうなって思う。他の人で同じように感じてる人っているのかな?
SICP=Structure and Interpretation of Computer Programs(計算機プログラムの構造と解釈)ね。
いや、悪い本じゃないから、読みたい人は読めばいいと思うよ。
ただ、この本を読んだり、薦めたりしている人は、ほとんどこの本の主旨理解してないんじゃないかな。
まず、プログラマやプログラマ志望の人がこの本を読むのは、根本的にズレている(とくに、LispやSchemeを学ぶためにこの本を読む人)。
自動車を運転したい人が自動車のしくみを勉強するようなものだからだ。
もちろん、何度も言うように教材としては優れているから、読みたい人は読めばいい。
あと、これは前提知識が限られた人向けの参考書であって、計算機科学の主流の教科書ではない。
喩えるなら「経済学部生のための高校数学でわかる線形代数」とかそういう類の本であって、計算機科学を専攻する人がわざわざこの本を読むのは遠回り。最初から自分が学びたい分野の専門書を読めばいい。
このプログラミング言語はMtGだと多分この色の組み合わせだろう。
みたいなのをまとめたら次のようになった(TIOBEのランキング順トップ50)。
後半は知らない言語もあって怪しいが、おおよそこのようになると思われる。
※改めて見てみると何箇所か違和感があったので最初の版からちょっとだけ修正した。
順位 | プログラミング言語 | 色の組み合わせ | 内訳 |
---|---|---|---|
1 | Java | アブザン | 白黒緑 |
2 | C | ゴルガリ | 黒緑 |
3 | Python | ティムール | 緑青赤 |
4 | C++ | ジャンド | 黒赤緑 |
5 | C# | バント | 緑白青 |
6 | Visual Basic .NET | セレズニア | 緑白 |
7 | JavaScript | ボロス | 赤白 |
8 | PHP | グルール | 赤緑 |
9 | SQL | 無色 | |
10 | Swift | 4C(緑欠色) | 白青黒赤 |
11 | Go | ゴルガリ | 黒緑 |
12 | Assembly language | 黒単 | 黒 |
13 | R | イゼット | 青赤 |
14 | D | グリクシス | 青黒赤 |
15 | Ruby | 赤単 | 赤 |
16 | MATLAB | イゼット | 青赤 |
17 | PL/SQL | 無色 | |
18 | Delphi/Object Pascal | アゾリウス | 白青 |
19 | Perl | ラクドス | 黒赤 |
20 | Objective-C | エスパー | 白青黒 |
21 | SAS | アゾリウス | 白青 |
22 | Visual Basic | 緑単 | 緑 |
23 | Dart | ジェスカイ | 青赤白 |
24 | Scratch | 白単 | 白 |
25 | Scala | 5C | 白青黒赤緑 |
26 | Groovy | ナヤ | 赤緑白 |
27 | Transact-SQL | 無色 | |
28 | F# | アゾリウス | 白青 |
29 | Rust | マルドゥ | 赤白黒 |
30 | COBOL | オルゾフ | 白黒 |
31 | ABAP | アゾリウス | 白青 |
32 | Lisp | シミック | 緑青 |
33 | Kotlin | 4C(緑欠色) | 白青黒赤 |
34 | Logo | 白単 | 白 |
35 | RPG | ディミーア | 青黒 |
36 | Lua | 緑単 | 緑 |
37 | Fortran | スゥルタイ | 黒緑青 |
38 | PowerShell | ジェスカイ | 青赤白 |
39 | Ada | ディミーア | 青黒 |
40 | LabVIEW | ディミーア | 青黒 |
41 | Erlang | 緑単 | 緑 |
42 | Julia | イゼット | 青赤 |
43 | ML | 青単 | 青 |
44 | Scheme | シミック | 緑青 |
45 | Haskell | エスパー | 白青黒 |
46 | TypeScript | ジェスカイ | 青赤白 |
47 | OpenEdge ABL | アゾリウス | 白青 |
48 | LiveCode | アゾリウス | 白青 |
49 | PostScript | 無色 | |
50 | ActionScript | ジェスカイ | 青赤白 |
見返してみるとおおよそ次のルールに従って決めているような気がした。
緑の判定があやふやな気が若干しないでもない…
色 | イメージ |
---|---|
白 | 高レイヤ、初心者向け |
青 | 浮世離れ、ベンダー |
黒 | 低レイヤ、黒魔術 |
赤 | 速い、先進的 |
緑 | 基盤、グルー |
無色 | 道具 |
まつほろひとゆきが作った日本産のコンピューター言語。パールというコンピューター言語を元に作られていてWebサービスを作るためのフレームワークを搭載している。代表的なWebフレームワークはtDiary
C
デニス立地さんがNTTで開発した言語。マルチクスというOSを作成するために作られた。わざと複雑な言語仕様にすることで自分の役職ポジションを守ろうとしていたが、思った以上に世の中の人間はこの言語を使いこなしてしまい、超有名な言語になってしまった。スーファミのゲーム制作にさえ使えなほどの超高級言語
おまじないと呼ばれるプリプロセッサでの書き換えが必要な謎の文字列を埋め込む必要があったり、言語仕様に曖昧な部分も多く、同じソースなのに実行環境によって動きが異なる、欠陥言語である。(32bit向けプログラムが64bit環境で動作しないなど)
オブジェクト指向言語。すべてのオブジェクト指向言語はこいつから始まった。
主にWindows上で動作するゲームを作るための言語。今ではUnityとか色々なゲーム開発の環境とかあるが、結局はパフォーマンスとか考えたらC++使うことになる。
代表作はOpenGL、DirectX、Window10、LibreOffice など
JavaScriptから派生した言語。読み方は(ジャワ。ジャワ島のジャワ。)。もともとはOracleの創始者の博士が趣味で作成して、現在のOracleデータベースの基礎となるテクノロジー。アプレットという実行するための専用プログラムをインストールしないと、Javaで作ったプログラム(.classファイル)は動作しない。マークはコーヒーだと思われがちだが、紅茶(ジャワティー)である。
アンドロイドOSを作成するためにも使われており、アンドロイドのOSカーネルはJavaで制御されている。そのため定期的にGCが走るので、アンドロイド端末は定期的に動作を停止することがある(いわゆるプチフリーズ)。
対策するためにはGC戦略を見直してヒープ領域のサイズやメモリに乗せるキャッシュのサイズなどの調整が必要であるが、げんざいのGoogleにはこれらを調整する人員はすでにいない。
このように業務用データベースから携帯電話まで幅広く使われているので、Javaの技術があっても市場価値は殆どないと言われている。(みんな使えて当たり前)
晩年政界への進出を目論んでいた松下幸之助が、未来社会を見据えて開発した言語。主にWebアプリケーションを作成するために使われている。PはパナソニックのP。を略してPHP
かんたんにシェルコマンドを実行できたり、クエリストリングに代入した値を直接グローバルで評価できたりするなど、洗練されていてとても便利な言語である。
HTMLやメール本文の中にもPHPの処理を書き込むことができる。
この世のすべてのサーバーに実行環境が存在するので、PHPのコードさえあれば、コンパイルも不要でどのような環境でも動作する。
C言語の100倍生産性が高く、Wikipedia、Facebook、Slackなどの超一流のサイトやサービスで大量のアクセスを捌いている。
WardPressと呼ばれるフレームワーク(全世界のWebサイトの3分の1以上はWardPressで作成されている)を作成している言語であり、この言語なくして今のWebは存在していない。
データベースとも親和性がある、などと言われることもあるが特に根拠はない。
韓国人棋士を倒したAIに特化したプログラム言語。Googleが開発しており、もともとはDartという名前だったが、汚いという理由でなまえがGoに変わった。そのため現在はDartという言語は存在していない。
AIに特化しているというだけあり、低レイヤむけの実行ファイルを作成する必要があるため、コンパイルが必要ではあるが、だいたいどの環境向けのバイナリも生成することができる。
デフォルトでディープラーニングを使うための機能を持っていたり、プログラムを並列実行するための機能が備わっているので、コア数の多い環境で高速に動くプログラムを作りやすい。
JavaScript
Javaの元になったプロトタイプベースのオブジェクト指向言語。読み方はジャワエスクリプト。W3Mというブラウザの上でインタラクティブにWebサイトを動かすために作成された言語。もともとブラウザの上で動くための言語だったが、後にSafariブラウザに搭載されていたV6エンジンというJavaScript言語の実行エンジンを分離してNPMというJavaScriptを直接実行できる環境となった。
それ以降JavaScriptはブラウザ以外にVRゴーグルの中などで動くようになった。
並列プログラミングが不可能な作りのため、コールバックを多用して、スパゲッティーコードを量産することができる。
NPMを使う奴らは、JSがブラウザ環境で使われる言語であることを全然考えてないため、WebpackとかBabelといった謎の開発環境をシコシコ積み上げている。いつかその塔は爆発し崩れ去ることになるであろう。
Javaと同じくJavaScriptから派生した言語。Javaとは互換性は無いが、JavaScriptの上位互換があるため、JavaScriptのコードをそのまま実行することができる。
$マークから始まる命令のみで構成されているとても縁起のいいプログラミング言語。おもにパララックスなどを実現するために利用されていて、WardPressなどのドライバとしても使われている。
JavaScriptの改良版であり、現在JavaScriptと言われているプログラム言語の99%はjQueryのことである。そのため現在慣習的にJavaScriptと呼ばれているもののほぼ全てはjQueryである。
jQueryを覚えればJavaScriptは覚えなくても良い。などと言われるが、正確にはjQueryを覚えた頃にはJavaScriptも覚えている。というのが正確である。
JavaやjQueryなどと同じくJavaScriptから派生した言語。Microsoftが開発した関数型言語。開発時はF#(エフシャープ)というコードネームだった。
型に特化した言語であり、Microsoft製のVSCodeというIDE環境でしか開発、実行が出来ない。(ただしMacやLinux上でも動作可能)
TypeScriptを動かすにはサーバーにVSCodeもインストールする必要があり、言語やIDEのバージョンアップも多いため、メンテナスンスが困難である。
前進となるObjectiv-Cという言語が、気持ち悪い構文であったため開発者が不足しており、このままではOSのメンテナンスもままならない、という理由で最初のバージョンがわずか14日間で作られた言語。
(一気飲みを奨励するものではありません。お酒は20歳になってから)
パーアル パール パール フワフワ パーアル パール スクリプト
コーボル コボル コーボル フワフワ コーボル コボル コーボル 構造化
ルービイ ルビー ルービイ フワフワ ルービイ ルビー オンレイルズ
リースプ リスプ リースプ フワフワ リースプ リスプ 丸カッコ
スーカラ スカラ スーカラ フワフワ スーカラ スカラ 暗黙の
エースキュ エスキュ エースキュ エルエル エースキュ エスキュ 行ロック
ラースト ラスト ラースト フワフワ ラースト ラスト 所有権
ジャーバス ジャバス ジャーバス クリプト ジャーバス ジャバス webpack
(最初に戻る)
初心者が最初に取り組む言語としては、最近はPythonが良いのでは?
とっつきやすい上に強力で、Pythonだけで相当高度なことまで実現できるし、わかりやすい入門書や教科書や参考書がたくさん出回っている。
でも、プログラミング基礎からじっくり積み上げていきたいなら、今でも Pascal あたりの Wirth系の手続き型の構造化言語が一番いいかも知れない。(Modula-2 や Ada でも)
その次にCをかじってから、次にPythonあたりに進むと、先々の見通しが良いかも。
なお、ケンブリッジ大のコンピュータサイエンス学科では、入学前にLOGOでプログラミングの入門を勉強しとけと勧めていた。Lispよりはとっつきやすいけど、再帰などの概念も勉強できるから。
ハッカーと画家に影響され2週間ほどLisp語族にいろいろ触れてみた。
「なんかいまいちだな…他のLisp言語はどうだろう」「こっちもなんかアレだな…」と
調べてるうちに4つくらい試すことになってしまった。
結局、これ、というものがなく、どれもツラいという感想をもった。
・「〇〇 入門」で検索すると講座サイトが見つかるが、一つしかない。それも20年前に作られたサイト。
・5chのスレのシリーズ番号が一桁。1スレ消化に何年もかかっている。
・ライブラリがない。あっても手作り感あるの個人制作のしかない。何年も前に更新が止まっている。
それでもLispが素晴らしい力を私に授けてくれるなら我慢してやってみようとおもったが、
そもそも、今となっては大してすごくないんじゃないか?と不安になった。
すごいすごい言われてたの何十年も前だし。
https://megalodon.jp/2019-0109-1324-16/https://osobuta.hatenablog.com:443/entry/2019/01/04/000247
『声優オタクをやめた理由』を読んだ。このガチ恋オタクはちゃんと"声優"オタクをやめていて羨ましいと思う声優オタク(笑)がこの記事を書いていく。適当に思い付いたことを書き連ねてるだけで、何の纏まりもない文章になると思う。
LISP…
このガチ恋オタクがゆるゆり出身って考えると、あの声優と比べてるんだろうなぁ、とは感じる。あの声優のイベント数が異常なだけだ。
『飯屋』の名前がついた理由をどこかのコンテンツ発信だと思ってそう。
ここめちゃくちゃ叩かれてるけど『ガルハイ』ってそういう番組だった気もするし、もっといえばマリンエンターテイメントの女性声優ラジオだいたいそういう番組だった気がする(『はみらじ』とか『はみらじ』とか『はみらじ』)。
次に、このガチ恋オタクは本当に"声優"オタクだったのか、である。
最近の声優の仕事は多岐に渡る。従来アニメや洋画への声を当てたり、テレビのナレーションをしたりなど裏方の仕事であった。最近は、声優のアイドル化が進んでいる……というのはTrySailが出てきた頃くらいの話、本当にここ1、2年はただの"アイドル"だと売れないから、声優が副業の"声優アイドル"として声豚に売ろうというのが多い。(約3とかシンデレラとか等愛とかお前らのことだぞ…)
この点で考えるとこのガチ恋オタクは声優を本業にしてる"声優"のオタクだ。
だが、この後が問題で
この流れは"声優"の原紗友里ではなく、"ラジオパーソナリティー"の原紗友里が好きなだけだったのではないか。
"ラジオパーソナリティー"の原紗友理が好きな人が無理して"声優"の原紗友里を追いかけたから限界がきただけの話ではないだろうか。
自分の推し、ここ数年"声優"を副業にしてる感あるし、そろそろ肩書きから"声優"消えそう。(自分が推す声優、だいたい肩書きから声優消える)
これ以降も書こうと思ったけど、この記事書いている間にBTC-FXで4万溶けて今週末のイベント代飛びそうだからおわり。
以上、ただの声優オタクのだらだら書きでした。
01. ハンドルネームは?
03. xyzzyについて何かwebサイトを持っていますか?
持っていません
0.2.2.253
15年くらい
昔のことすぎて忘れましたが、学校の UNIX 演習で Emacs を使っていたので、Windows でも使おうと思っていて見つけたんだと思います
07. xyzzy 以外に使っているテキストエディタはありますか?
Atom, McEditor
08. xyzzy を使う前に Emacs 系のテキストエディタを使ったことはありますか?
プログラムを書いたり設定ファイルをいじったり、テキストに関することならだいたい
10. xyzzy が関連付けされているファイルタイプは何ですか?
txt, md, log, ini, bat, html, xml, css, less, scss, sass, styl, js, coffee, pl, php, py, rb, java, sql ほかにもあるかも
11. xyzzy を他人に勧めたことはありますか? また、結果はどうでしたか?
使い始めた当時同級生が何人か使っていました
12. xyzzy がフリーじゃなかったとしたらいくら位の値段になると思いますか?
今なら3000円くらいなら買う
じじー
14. xyzzy の好きな点・嫌いな点はどこですか?
嫌いな点:動作をカスタマイズするときに不自由なところがある点
15. パソコンを立ち上げている時間の内、xyzzy をどのくらい使っていますか?
16. キーバインドは Windows風ですか? Emacs風ですか? オリジナルですか?
17. .xyzzyに書く派ですか? .siteinitに書く派ですか?
必要に応じてそれぞれに
してます
実際にさわりながら。Lisp は Google 先生さまさま
22. xyzzy を使うにあたって一番苦労したことは何ですか?
xyzzy 自体の Lisp API がマニュアル化されていないところ
23. xyzzy を使って目からウロコだった機能は何ですか?
Buffer Menu
24. 今の xyzzy に望むことはありますか? またそれは何ですか?
矩形機能に影響が出そうだけどプロポーショナルフォントへの対応と、絵文字など最近 Unicode に追加された文字への対応
26. Lisp のほかに読み書きできるプログラム言語はありますか?
JavaScript, ES 2016, Coffee Script, Action Script 3, C, C++のごく一部, Objective-C, Rust, Swift, Perl, PHP, Python, Ruby, bash, xyzzy lisp
28. 拡張Lisp で導入しているものは何ですか? (多い方は代表的なものをお答えください)
clickable-uri, jscript-mode, markdown-mode など
29. これは外せない! という 拡張Lisp はありますか? またそれは何ですか?
30. NetInstaller を利用していますか?
31. 拡張DLL を導入していますか? またそれは何ですか?
popup-dododo のための Cairo とか?
32. ドキュメント(info,reference等) は使っていますか? また、それは何ですか?
使っていません。自分で改造してキーワードを全部 Web で検索するようにしています
33. ネット関係の 拡張Lisp(www-mode,kamail等)を使っていますか?
xyttr
34. アウトライン系のLispは使っていますか? またそれは何ですか?
使っていません
35. メモ系(changelog-memo,howm等)Lispは使っていますか? またそれは何ですか?
使っていません
36. xyzzy の五目並べはやったことがありますか? また、結果はどうでしたか?
たまに。テキストの整形処理なら正規表現でゴリゴリやるほうが多いです
使っていません。国語、英和・和英、英英辞典は iPhone のアプリを使います
毎日の仕事に欠かせません。便利にカスタマイズしすぎてむしろファイラだけのために新しく xyzzy 自体を起動することもあります
あまり使いません。新しく(Windows における)ウィンドウ
使っていません
42. メーリングリストには参加していますか? また、メールを送信したことはありますか?
ありません
43. 2ch の xyzzy 関連スレッドに書き込みをしたことはありますか? また、その頻度はどのらいですか?
大昔にどうしてもわからないことがあって書き込んだ記憶があります
44. xyzzywikiに書き込みをしたことはありますか? また、その頻度はどのくらいですか?
たまにほしくなるので表示しています
隠しています
47. xyzzy のファンクションバーは表示していますか?
表示していません
表示していません
49. 色、フォントなどは変更していますか? またそれは何ですか?
色は暗い背景色、ハイライトカラーはできるだけ色相を離したパステルカラーです。
フォントは Consolas に源新ゴシック Regular を組み合わせています。
まだまだ xyzzy は不滅です
最近、ってわけでもないけど、近ごろはどうも浅いというかなんというか、ハッカーって言葉そのものに、以前ほどカッコよさを感じなくなってしまった。
ネット記事とかのメディアでも目にする機会が増えてきた(気がする)。
というか、なんかカジュアルな感じで目にする機会が増えてきた(気がする)。
「ハッカーのxxxさんがyyyを解説!」とか、「ハッカー向けのxxx」とか、「ハッカーズhogehoge」とか。
ハッカーって響きに「モンドセレクション受賞」程度の重みしか感じなくなってしまった。
自分でハッカーを名乗ったり、名刺の肩書にハッカーって書いたりしている人もいるそうだ。
そんなんじゃなかったじゃん、と、なんだかインディーズから応援してたバンドがMステに出演したときのような寂しさを覚える。
技術力があろうがなかろうが、自分で名乗ったりメディアに言わせたりしてるのとかね、そうじゃないでしょって。
脱線するけど、そういう人種と置換しちゃうCTOって、近しい存在のように感じるんだけど、どうだろう(:%s/置換/痴漢/)。
もっとも、カッコよさを感じていたのは自分だけで、LISPハッカーたちからすれば、元からモンドセレクション受賞程度のものだったのかもしれない。
僕も10年以上IT戦士として生きてきたし、そういったものに慣れてきてしまったのか。
中高生の頃に感じていた、掴みどころのないカッコよさは、逆に言えば、何かをつかめるほど知識も技術もなかったってだけで、いわゆる恋に恋する少女だったのかもしれない。
そう思えば、少しはプログラマとして大人になれたのかな?と、ちょっぴり気楽な気持ちになれる。
30過ぎて大した技術も持たず、OSSにコミットもせず、登壇もブログもかかぬ残念な体たらくを保ち、意欲ハナク、決シテ発信セズ、イツモシヅカニワラッテヰル。
ただ目の前の業務に追われて終わる毎日で、目にするハッカーって言葉にしょっぱさを感じる大人になってしまった。
それでもやっぱりmatzにカッコよさを感じる心は持ってるし、
読みきれもしない技術書を高く積み上げる出処不明の知識欲も持ってるし、
ほとんど理解できないくせにtcfmをサブスクライブしてしまう臆病な自尊心と尊大な羞恥心も持ってる。
そろそろ何が言いたいのか分からなくなってきた。