タグ付けされた質問 「history」

プログラミングとコンピューティングの歴史についての質問。

3
「4の値を変更したことはありますか?」-これがどのようにHayes-Thomasクイズに入ったのですか?
1989年、リー・フェリックス、ジョン・ヘイズ、アンジェラ・トーマスは、多くのインサイダージョークを含むクイズ形式のハッカーのテストを書いた。」 次のシリーズを検討しています。 0015 Ever change the value of 4? 0016 ... Unintentionally? 0017 ... In a language other than Fortran? シリーズの中で「4」という数字を具体的にする特別な逸話はありますか? 一部のFortran実装では、定数の値を変更できましたか?これは、当時一般的に使用されていた他の言語でも可能でしたか?
24 history  fortran 

7
手続き型プログラミング時代のデザインパターンは何でしたか?[閉まっている]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 5年前に閉鎖されました。 同様:20年前にプログラミングはどのように行われましたか? OOPは最近非常にファッショナブルで、1960年代にSimula 67にルーツを持ち、後にSmalltalkとC ++で人気を博しました。DRY、SOLID、オブジェクト指向の世界のデザインパターンに関する多くの本があります。 しかし、OOPパラダイムが広く採用される前のプログラミングの主な原則は何でしたか?そして、主要な設計パターンは何でしたか?



1
.Netの配列にはLengthがあるのに、他のコレクションタイプにはCountがあるのはなぜですか?[閉まっている]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 4年前に閉鎖されました。 たとえば、C#では、配列にLengthプロパティがあります。ただし、リストなどの他のコレクションタイプにはCountプロパティがあります。これら2つが異なる理由はありますか?もしそうなら、私は知りたいです。

5
いくつかの一般的なプログラミング言語がCの影響を受けるのはなぜですか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。回答は、事実、参考文献、または専門知識によってサポートされると予想されますが、この質問は、議論、議論、世論調査、または広範な議論を求める可能性があります。この質問を改善し、おそらく再開できると思われる場合は、ヘルプセンターをご覧ください。 7年前に閉鎖されました。 TIOBEインデックスによると、プログラミング言語のトップ10は、Cの影響を強く受けているようです。 1. Java この言語は、その構文の多くをCおよびC ++から派生していますが、オブジェクトモデルが単純であり、低レベルの機能が少なくなっています。- wikipedia.org 2. C Cは史上最も広く使用されているプログラミング言語の1つであり、Cコンパイラが存在しないコンピューターアーキテクチャはほとんどありません。- wikipedia.org 3. C# .NET Frameworkの開発中、クラスライブラリはもともとSimple Managed C(SMC)と呼ばれるマネージコードコンパイラシステムを使用して作成されました。1999年1月、Anders Hejlsbergは、「Cのようなオブジェクト指向言語」を意味するCoolと呼ばれる新しい言語を構築するためにチームを結成しました。- wikipedia.org 4. C ++ Bjarne Stroustrupによって1979年にBell LabsでC言語の拡張として開発されました。- wikipedia.org 5. Objective-C Objective-Cは、Cプログラミング言語にSmalltalkスタイルのメッセージングを追加する、反射型のオブジェクト指向プログラミング言語です。- wikipedia.org 6. PHP 彼はこれらのスクリプトをCプログラミング言語のCommon Gateway Interface(CGI)バイナリとして書き直し、Webフォームと連携してデータベースと通信する機能を追加し、この実装を「パーソナルホームページ/フォームインタープリター」またはPHP / FIと呼びました。- wikipedia.org 8. Python Pythonは1980年代後半に考案され、1989年12月に、オランダのCWIのGuido van Rossumによって、例外処理とAmoebaオペレーティングシステムとのインターフェイスが可能なABCプログラミング言語(SETLに触発された)の後継としてその実装が開始されました。- wikipedia.org ABC(プログラミング言語)その設計者は、ABCプログラムは通常、同等のPascalまたはCプログラムの約4分の1のサイズで、より読みやすいと主張しています。- wikipedia.org 9. Perl Perlは、C、シェルスクリプト(sh)、AWK、sedなどの他のプログラミング言語から機能を借用しています。- …

5
ビルドツールが、基礎となるプログラミング言語とは異なるスクリプト言語を使用するのはなぜですか?
私は最近、ほとんどの言語のメインビルドツール/システムが基礎となるプログラミング言語自体とは異なる言語を使用していることに気付いたときに、Nodejsプロジェクトのビルドツールを使用しています。 たとえば、makeはCまたはC ++を使用してスクリプトを記述せず、ant(またはMaven)はスクリプトの言語としてJavaを使用しません。 Rubyのような新しい言語は、rakeのようなビルドツールに同じ言語を使用します。しかし、なぜこれが常に当てはまらないのですか?基礎となる言語とは異なる言語を使用するビルドツールを持つことの利点は何ですか?

3
コピー命令の名前が通常MOVであるのはなぜですか?
非常に多くのアセンブラーでは、値のコピー命令には通常「MOV」という名前が付けられ、マニュアルの説明には通常「move」も含まれています(ただし、「load」、「store」、「extract」など、他の単語も使用できます) )この規則に従わないISAを見つけることはまれです。 一方、他のコンテキストでは、ソースが破棄されるという意味で「move」と「copy」は異なります(たとえば、Unixでは「mv」と「cp」、Norton CommanderとクローンではMove [F6] など)。 )アセンブラーの「移動」には、セマンティック「コピー」があり、ソース値をそのまま保持します。 これは少なくともIBM 1401(1959)以来始まっていることがわかりましたが、IBM 360はこの単語をストレージ内コピーにのみ使用し、レジスタとストレージ(「ロード」と「ストア」を使用)間の操作には使用しませんでした。しかし、なぜそれがまだ広く使用されており、「コピー」または「ストア」に置き換えられていないのですか?
23 history  assembly 

1
「exit(-1)」はどこから来たのですか?
「異常終了」を表すためにを使用することを推奨するexit(-1)、インターネット上の多くのレガシーソフトウェアや悪いチュートリアルに見られreturn -1ます。問題は、少なくともPOSIXでは-1、有効なステータスコードではなく、有効なステータスコードです。man 3 exitはのexit()値をstatus & 0377親に返すことを示しています。つまり、に-1なり255ます。非POSIXシステムでEXIT_FAILUREは、移植性のために推奨されます。しかし、「-1は異常終了を意味する」と「EXIT_FAILUREは1以外の可能性があります」とは表示されません。 これを永続化するStackOverflowの質問の例を次に示します。ソフトウェア「unrealircd」も、プログラムのexit(-1)終了に使用するプログラムの例です。実際には、これにより、とのインターフェースが難しくなりますsystemd。 このアンチパターンはどこから来たのですか?あるコンテキストで有効ですか?

1
アラン・ケイがこの用語を発明する前に、彼らは何をオブジェクト指向プログラミングと呼んだのですか?
アラン・ケイは「私は「オブジェクト指向」という用語を作り上げました。C++を念頭に置いていなかったと言えます」もちろん、彼が念頭に置いていたのはSmalltalkでした。しかし、彼はオブジェクト指向プログラミング自体を構成しませんでした。彼はSimulaから基本的なアイデアを得ました。この用語がまだ発明されていない場合、Simulaで元々オブジェクト指向プログラミングと呼ばれていたものは何ですか?

6
C#のPascalケーシングメソッド名の背後にある哲学/理由は何ですか?
この質問は、Software Engineering Stack Exchangeで回答できるため、Stack Overflowから移行されました。 8年前に移行され ました。 私はちょうどC#を学び始めています。Java、C ++、Objective-Cのバックグラウンドから来ると、C#のPascalのケースはメソッド名がかなりユニークで、最初は慣れるのが少し難しいと思います。この背後にある理由と哲学は何ですか? 私はそれがC#プロパティのためだと推測しています。メソッド名がインスタンス変数とまったく同じになるObjective-Cとは異なり、C#の場合はそうではありません。プロパティを使用する目標の1つは(プロパティをサポートするほとんどの言語の場合と同様)、プロパティを変数やメソッドとまったく区別できないものにすることです。したがって、C#で「int x」を使用すると、対応するプロパティがXになります。プロパティとメソッドを区別できないようにするため、推測するすべてのメソッド名も大文字で始まることが予想されます。(これは、これまでC#について知っていたことに基づいた私の仮説であり、まだ学習中です)。私はこの好奇心の強いガイドラインがどのように生まれたのか知りたいと思っています( (編集:Pascal-casingとは、PascalCaseを意味します(基本的にはcamelCaseですが、大文字で始まります。ほとんどの言語では、メソッド名は通常小文字で始まります)。

2
誰が例外を設計しましたか?
例外と例外処理はどこから来たのですか? .NETの使用方法、C ++のサポート方法が気に入っています(ただし、ライブラリは残念ながら戻りコードを使用するか、代わりにCで作成されています)。私はすべての新しい言語でその標準を知っていますが、誰が最初に設計したのですか、それはどこから来たのですか? C ++はそれを使用する最初の言語ですか?他に古いものは知りません。

2
なぜCはポインターにアスタリスクを使用するのですか?[閉まっている]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 4年前に閉鎖されました。 私は今Cについて学んでいます。 作成者*が実際にポインターのように見えるシンボル()ではなく、ポインターのシンボルとしてアスタリスク()を選択したのは奇妙に思えます->。 逆参照と関数ポインターの混乱を考慮すると、アスタリスクを使用する歴史的、または実用的な理由がありますか?
21 c  history  syntax 

11
1960年代に人工知能に取り組んでいる科学者とエンジニアが最初に自信過剰になった理由はありますか?
AIとデータマイニングのクラスと本を始めたばかりです。AIアプリケーションプログラミングは、AIの歴史の概要から始まります。最初の章では、1940年代から現在までのAIの歴史を扱います。ある特定の声明が私に突き出ました: [60年代] AIエンジニアは、約束を超えて不十分に... 自信過剰の理由は何ですか?それは、ブレークスルーが間近に迫っていることを示す数学的予測モデルによるものなのでしょうか、それとも利用し続けるハードウェア能力の増大によるものなのでしょうか?

4
60年代と70年代にプログラマーはどのようにネットワークを使用して高価なコンピューターリソースを共有しましたか?
この質問は、Software Engineering Stack Exchangeで回答できるため、Stack Overflowから移行されました。 8年前に移行され ました。 私は若く、かつてのようにネットワーキングとプログラミングを体験するために60年代と70年代に生きていませんでした。私はVan JacobsonによるContent Centric Networkingに関する講演を見てきましたが、これらの講演では、60年代および70年代に、ネットワークは希少なカードリーダーへのアクセスを取得するなどのリソース共有の問題を解決するために設計されたと述べている歴史的な視点を提供しますまたは高速テープドライブ。彼はその後、この時代にはデータがほとんどなく、そのデータは「コンピューター上に存在しなかった」と言い続けます。それはあなたが持ち歩いたもの、例えばテープや印刷物です。 これに関して2つの質問があります。 1)人々はどのように「リモート」でカードリーダーのようなものを使用しましたか?確かにある時点で、物理カードはコンピューターのある場所に届けられなければなりませんでした。あなたが100マイル離れていたら、それは彼らが事前にカードを掲示し、それからそれらのカードデッキを実行するのに必要なコマンドを実行するために単にネットワークを使用したことを意味しましたか? 2)人々は一般にどのようにしてプログラムの結果を取得しましたか?それはワイヤーを介して送り返されましたか、それともプログラムが遠隔研究者に戻った後に印刷物/テープなどが投稿されましたか? 私が言ったように、ここで私の時代が何らかの形で混同されてしまった場合、私は謝罪します、私はその時に生きていませんでした。 ありがとう。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.