プログラミング言語のキーワードを使用して最長の文章を書く[非公開]


36

タイトルが言ったように、課題は1つのプログラミング言語のキーワードのみを使用して最も長い文を書くことです。

たとえば、C ++のキーワードを使用すると、次の文を書くことができます。

このフロートを試さないでください

何を思いつきますか?


16
シェークスピアは、このen.wikipedia.org/wiki/に

3
@elssarはい、限り、あなたはの線に沿ってそれらを乱用していないとしてen.wikipedia.org/wiki/...
パブ

1
任意の長い文を作成するのに多くの単語は必要ありません。たとえば、C ++キーワードを使用すると、「これを試して、これを試して、...」を実行できます。「buffalo」という単語だけを使用して任意の長さの文を作成できることは有名です。このページで誰かが言うように、「char」でも同じことができます。 、十分に強力な火炎放射器へのアクセスが与えられた」)。たぶん、各単語が一度しか使用できなかったらもっと面白いでしょうか?
ジェームズ

1
この質問が投稿される前に私はこれをしていました。当時私はかなり未熟だったので、explicit言語について警告します。chat.stackoverflow.com/transcript/7?m=4671602#4671602
ケンドールフレイ

6
APLの男が勝つことができないことを最後に挑戦
kb_sou

回答:


34

Mathematica 100 80ユニークワード

ここから始まります。Mathematicaのすべての標準語は大文字で始まります。これにはI、負の1の平方根が含まれます。

日曜日、およびすべての時間-輪郭を設定するためのクリアなダイナミックインタラクティブノートブックを開くと、一時的な、非同期の、目に見えない文字にまたがる欠落している青い配列を翻訳せず、編集可能でサウンドの外側のオレンジの未定義の矢印を削除しません浅い名前と偽の属性を一緒に拡大するルート(ほとんどの軸は完全な内部カーネルを逆順に分割するため)コンパイルされた直方体、最も近いタイミングパターンを持つ赤十字、およびヘッドと繰り返し一意の白いリンクに参加する...


誰でも興味がある場合に備えて、Mathematicaで認識される500以上の単語があります(追加のライブラリは不要です)。それらはすべてキーワードではありませんが、経験豊富なMathematicaプログラマーはそれらのほぼすべてを知っており、使用しています。


{中止、上、Abs、累積、精度、AddTo、After、Alignment、すべて、代替、分析、およびアニメーション、アニメーター、注釈、年金、アンチエイリアス、非対称、別、外観、追加、適用、配列、配列、矢印、矢印、アサート、仮定、仮定、非同期、属性、自動、軸、軸、戻る、背景、バックスラッシュ、後方、バンド、ベースライン、理由、ビープ音、前、開始、下、二値化、二項、空白、ブレンド、ブロック、ぼかし、ブックマーク、ブール値、下、境界、ボックス、ブレーク、ボタン、バイト、キャンセル、キャップ、ケース、キャッシュフロー、キャッチ、天井、セル、セル、検閲、センター、キャラクター、キャラクター、チェック、チェックボックス、チョップ、サークル、クリア、クリップ、時計、閉じる、閉じる、閉じる、粗い、係数、収集、コロン、色付け、列、共通、コンパイル、コンパイル、補完、複合、構成、構成、圧縮、条件、コーン、合同、接続詞、接続、定数、定数、コンテキスト、コンテキスト、続行、輪郭、コントロール、収束、畳み込み、コピー可能、相関、ベビーベッド、カウント、共分散、クロス、キュムラント、カップ、カール、サイクル、シリンダー、ダーク、日付、デバッグ、デクリメント、デフォルト、延期、[度]、初期化解除、削除可能、デリミター、デリミター、分母、デプロイ、デプロイ済み、深さ、微分、対角線、ダイアログ、ダイアモンド、差、膨張、ディメンション、方向、ディレクティブ、選言、ディスク、ディスパッチ、表示、配布、分散、ディザリング、分割、ディバイダー、分割可能、除数、実行、ドット、ダウン、ドロップ、動的、編集可能、固有値、要素、削除、空、有効、エンコード、終了、入力、エピローグ、等しい、同等、評価者、除外、存在、終了、展開、期待、指数、エクスポート、式、抽出、因子、階乗、失敗、偽、ファイル、充填、検索、最初、フィット、フラット、フラット化、フロア、フォールド、フォント、for、フォワード、フレーム、フロント、フル、関数、収集、一般、ジェネリック、取得、グラフ、グラフィックス、グレーター、グリッド、ハッシュ、ヘッド、ヘッド、ヒストグラム、ホールド、色相、ハイパーリンク、ハイフネーション、I、アイデンティティ、If、イメージ、暗黙、イン、インクリメント、継承、インナー、入力、挿入、インセット、インストール、整数、整数、整数、積分、インタラクティブ、インターリーブ、間隔、非表示、アイテム、結合、結合、カーネル、ラベル、ラベル、大、大、最終、緯度、起動、左、凡例、長さ、小、レベル、照明、制限、線、リンク、リスト、リスト可能、聞く、リテラル、ロック、ログ、最長、経度、倍率、拡大、多数、操作、手動、地図、マスキング、素材、行列、最大化、平均、中央値、中、メニュー、メッシュ、メッセージ、メッセージ、メソッド、最小化、未成年者、行方不明者、モーダル、モード、モジュラー、モジュール、モジュラス、モーメント、月曜日、モニター、ほとんど、マウスオーバー、多項、多重度、複数選択、名前、最近接、ニーズ、負、ネスト、次、なし、ノル、ノルム、標準、正規化、しない、ノートブック、ノートブック、 Null、数値、分子、オフ、オフセット、オン、不透明度、開く、開く、操作する、オプション、オプション、または、順序、順序付け、順序なし、直交化、アウト、外側、オーバー、オーバーフロー、パクト、ペイン、パネル、パネル、並列化、パラメーター、Parenthesize、Part、Partition、Paste、Path、Pattern、Pause、Permutations、Permute、Perpendicular、[Pi]、Piecewise、Pivo​​ting、Placed、Placeholder、Plain、Play、Plot、Plus、Point、Polygon、Polynomials、位置、ポジティブ、パワー、優先順位、優先順位、精度、プレフィックス、プリペンド、前、印刷、確率、射影、プロローグ、プロパティ、プロパティ、プロポーション、保護、保護、プルーニング、プット、ピラミッド、分位、数量、四分位数、四分位数、キューイング、静か、終了、商、ラドン、ランダム、範囲、ラスター、ラスタライズ、合理的、合理的、読み取り、実数、収獲、記録、四角形、削減、絞り込み、更新、再インストール、リリース、削除、削除、繰り返し、置換、リサンプリング、リスケール、残余、解決、残り、リターン、リバース、リフル、右、ルート、ルート、回転、ラウンド、行、ルール、土曜日、保存、保存可能、スケール、スケーリング、スキャン、スクロールバー、選択、選択、シーケンス、シリーズ、セット、セットバック、セッター、設定、シェーディング、シャロー、共有、シャープ、ショート、ショー、サイドバー、サイン、署名、簡略化、スケルトン、スキップ、スロット、小さく、ソケット、解決、サウンド、種をまく、スペーサー、間隔、スパン、話す、球、スプライス、スプリット、スクエア、スタック、スター、ストリーム、ストリング、スタブ、サブファクトリー、サブグラフ、サブスクリプト、サブセット、サブトラクション、サム、スーパーセット、サード、構文、テーブル、テイク、タリー、一時的、テキスト、テクスチャ、したがって、スレッド、しきい値、スルー、ティック、時間、タイミング、一緒に、トグル、トグル、トレランス、ツールチップ、トップ、合計、トレース、トレーサー、翻訳、トランスポーズ、True、チューブ、タプル、未定義、下線付き、下付き、不等、アンインストール、ユニオン、ユニーク、統一、設定解除、上、変数、垂直、くさび、重み、どれ、一方、空白、あり、単語、書き込み}


16
突然、Mathematicaのキーワードが多すぎると思います。
ラマ氏

ポイントがあるかもしれません。Mathematicaでは、すべてが式であり、タイムサインなどのすべての記号は完全に表現されたときの名前です。長い形式、例えばTimes。Mathematicaで332の一般的な英語の単語を見つけました。これにはAppendTo、文字通り数千個あるような複合語や関数名は含まれません(ただし、実際には英語の単語ではありません)。
-DavidC

332は数時間前のカウントでした。私がチェックしたところ、Mathematicaプログラムで使用できる500以上の英単語があります。
DavidC

1
@dude多くのオプションと色の名前がリストにありません...あなたはさらに300を
足し合わせる

1
これらの識別子のほとんどはキーワードではありませんか?
ジェフリーディ

46

C ++、25個の一意の単語、合計28個

本当の友達、プライベートオートオペレーターのためにこの新しい短いパブリッククラスに登録してください(インラインで、この署名済みテンプレートを返します)、そうでなければこの長い揮発性のユニオンを壊して無効にしてください。


2
and代わりに使用できます&。:)
右折して14年

@rightfold私はそれを考えましたが、別の識別子を数えるのは簡単すぎると感じ、すべてのツールがそれらをキーワードとして認識するとは限りませんでした。
Sir_Lagsalot 14年

19

文章を作ることは私の強力なスイートではありませんが、ここには何もありません-

Python 20ワード

最後に、インポートを続行し、クラスlambdaがブレークしている間にグローバルyieldを上げて、execパスを印刷してみます。

チェックを支援するために、キーワードがキーワードリストに含まれているかどうかをチェックするコードを作成しました。

from keyword import kwlist
from re import findall

def kwcheck(sentence):
    """Check whether all the words of a sentence are Python keywords"""
    words= findall(r'\w+', sentence)
    for word in words:
        if word.lower() not in kwlist:
            return False
    return True, len(words)

if __name__ == '__main__':
    sen= raw_input("Enter your sentence: ")
    print kwcheck(sen)

14

教育の重要性

-A. Coder Guy(Pythonで作成)

Continue class, except if class is not for you.  
With no class, raise and assert!  Or yield, pass,
and break.  Try and continue!  Or - finally - return from class.

4
あるとき以来you、Pythonのキーワード?
小次郎

ハ、良いキャッチ。どのように変更できるかわかりません。しかし、自由に投票してください:-)
ブリガンド

以下のためではないselfかもしれませんか?あまり標準的な使用法ではありませんが、理解できると思います。
モーガンスラップ

11

Common Lisp

:In :Common :Lisp :a :keyword :is :simply :a :symbol :which :has :the :KEYWORD :home :package :which :is :true :of :all :symbols :starting :with :a :colon :so :you :can :construct :arbitrarily :long :sentences. :Do :I :win?

これは、たとえば:

(every #'keywordp '(:In :Common :Lisp :a :keyword :is :simply :a :symbol :which :has :the :KEYWORD :home :package :which :is :true :of :all :symbols :starting :with :a :colon :so :you :can :construct :arbitrarily :long :sentences. :Do :I :win?))

評価する T

http://www.lispworks.com/documentation/HyperSpec/Body/26_glo_k.htmを参照してください


9

C#、17ワード

これは、かなり合理的な技術的なジャンボジャンボのように見えます。
少し拡張できると思います。
foreach少しルールを引き伸ばします。このキーワードリストを
使用しました。

暗黙的な文字列foreach仮想構造体がこの揮発性ロックと同じくらい安全でない場合は、明示的な演算子を試してください。


9

ファクター-109

「自分の世界を幸せにして、アイテムを作ってください。一時停止します。自己満足しませんか?」

「はい<<。」

「オールディーズから?」

「はい>>。自己悲しい」

「ハバーシン、聞いて、すべてのフォーミュラはオールディーになります。悲しむことはなく、最後から何かをすることです。または。my-arch self is_gold <<。Change-is_gold。 。自己の約束を果たす。幸せの定義、軽いコピーを覚えていますか?」

「私に近い最も甘い日」。ハンドルミー、ハンドルミー。悲しい自己。近くにいないホーム>>。近くにないホーム>>記憶不足。悲しい自己、古い<<自己。ほとんど近い>>ものはずっと前に自分自身を残しました。」

「ハバーシン、変化に知られた自己。悲しいことはない、ヘイバーシン。幸せになりますか?<<自己を幸せから遠ざけますか?私のアーチの自己欲求>>自己であること>悲しいことはありません。

「Not remember-error!エラーnot!my-array has-entry?not not error!Leave error!」

「Smart-if remember-error。」

これらの多くはストレッチですが、それはいくぶん物語を伝えているので、それを補います。


1 +ファクター!!

これにはファクターが特に適しています。キーワードがないためです:D
cat

8

Applescript、30ワード

Applescriptの回答をPPCGに投稿するとは思っていませんでしたが、Applescriptの自然言語の設計哲学を考えると、この質問に最適です。

私はワードスミスではありませんので、ここから始めましょう。しかし、他の人が簡単にこれを打つことを期待しています。

Beneath the eighth error, my third script is ignoring the sixth local copy
of the fourth transaction to the seventh property whose reference is given
to repeat every tenth second.

これはApplescriptのキーワードから構築されています。

キーワード

約上、後ろ、後ろから「離れ」として前後に「下から」、「次を含む」を含む「下に含まれる」を含むコピーを含む継続コピーdivは8番目、最後は等しい、終了ごとにFALSE 「の代わりに」を無視する場合、それは最後のローカルme middle modであり、on propまたはon outの「out」または「out」ではありません。propref参照を繰り返します。トランザクションまでのタイムアウト時間を介してTRUE

以下は、このチャレンジに対して有効と見なされる場合とされない場合があります。

組み込みのクラスとプロパティ

エイリアスアプリケーションブールセンチメートルセンチメートル文字クラスの内容定数「立方センチメートル」「立方センチメートル」「立方フィート」「立方インチ」「立方メートル」「立方メートル」「立方ヤード」日付「日付文字列」日「摂氏」「華氏度「「ケルビン度」フィートファイル最前面ガロングラムIDインチ整数項目キログラムキロメートルキロメートル長さリストリットルリットルメートルメートルメートル月名前番号オンス段落「POSIXファイル」「POSIXパス」ポンドクォート「引用形式」実際のレコードリファレンスレストリバース「RGB 「実行中のスクリプト」「平方フィート」「平方キロメートル」「平方キロメートル」「平方メートル」「平方メートル」「平方マイル」「平方ヤード」テキスト時間「時間文字列」「ユニットタイプ」バージョン平日ワードヤード年

組み込みコマンド

「ASCII文字」「ASCII番号」ビープ音「アプリケーションを選択」「色を選択」「ファイルを選択」「ファイル名を選択」「フォルダを選択」「リストから選択」「リモートアプリケーションを選択」「URLを選択」「クリップボード情報」クローズアクセス」コピーカウント「現在の日付」遅延「警告を表示」「ダイアログを表示」「通知を表示」「シェルスクリプトを取得」「eofを取得」「ボリューム設定を取得」「情報を表示」「ディスクを一覧表示」「フォルダを一覧表示」 「ロードスクリプト」「ローカライズされた文字列」ログ「マウントボリューム」オフセット「アクセス用に開く」「場所を開く」「へのパス」「リソースへのパス」「乱数」ラウンドランを読む「スクリプトを実行する」と言う「スクリプトコンポーネント」を設定「eofを設定」「クリップボードを設定」「ボリュームを設定」「スクリプトを保存」要約「システム属性」「システム情報」「クリップボード」「GMTへの時間」

属性の検討/無視

大/小文字区別記号ハイフン「数値文字列」句読点「空白」


8

シェークスピア

44ワード、28ユニーク

はい、これらの単語はすべて、シェークスピアではキーワードレベルで重要な意味を持っています。シェークスピアのキャラクター名、通常の名詞、形容詞も言語の中核部分ですが、この演習ではリストが大きくなりすぎると思いました。

心に耳を傾けて心に入る必要があります。心は、自分が自分の芸術であり、自分自身の産物であり、自分よりも優れた行為であることを思い出させるために、出口と戻りの違いを思い出します。


7

Ruby、41ワード

次のクラスが終了するまで(または次のクラスモジュールまたは次のクラスが戻るまで)、クラスブレークを開始せず、クラスブレークを終了し、クラスブレークを確認し、クラスブレークをやり直し、クラスブレークを再試行します。 、またはその他!

実際のキーワードとしてリストされている単語を使用しているだけですです。カーネルのメソッドまたはクラスのインスタンスメソッドであるため、キーワードのように動作する他の多くの単語があります。

安っぽいアプローチが始まります

「エイリアス」、「開始」、「ブレーク」を定義しないでください...


3

C ++。

繰り返される単語はたくさんありますが、境界線の分別のある文です。

If this volatile friend false and do return unsigned public union template throw union
template goto void for false friend not using class, and try switch for new protected
union using true friend, or else catch long, private break using this public operator
switch for explicit union using new virtual friend if union for this friend not long and
true.

別名:この不機嫌そうな女の子が結婚許可証に署名しない場合は、免許を捨てて素敵な新しい女の子を見つけてください。それがうまくいかない場合は、「公共事業者のスイッチ」で仮想連合を試してください。 。

ああ、正確な単語数に関しては、申し訳ありませんが、私はカウントするのが面倒です。


3

Python、48ワード

クラス、(ラムダがクラスにある場合)を試して、グローバルインポートからの中断のように続行し、execからの戻りのyieldを上げます。それ以外の場合、ラムダはクラスにありませんが、defを除いて印刷インポートを続行し、最後に「assert elif」を渡すか、delがクラスにありません。

これには、 keyword.kwlist

ここでいくつかの説明が必要だと思います。この文は、現在、と呼ばれる場所にいる学校のクラスに言われていexecます。このクラスには、特にlambdaとという名前の2人がいますdef。それ以外の場合、DEL(ドイツアイスホッケーリーグ)はクラスにとって何もないためdefassert elifテストに合格する必要があります。


<speechless> oo

2

ECMA

ECMAの予約語には、接続詞も動詞の複数の活用形も含まれていないため、少し英語が壊れています。それは本当に命令型言語です!

このデフォルトのcatch関数を使用して、この新しいtypeofケースを試してください。

この場合、このスイッチを使用してください。壊れた場合は、この新しいスイッチで戻ります。最後に、この新しい関数を使用します。


2

Perl-いくつかのエントリ

結ばれたパッケージが与えられると、開くまでアンパック、アンパック、およびリンク解除し、各パッケージを再実行(リンク、パック、バインド、またはタイ)するか、開いていない場合はダンプします。次に、マップの読み取り、状態の書き込み、システムのリバースとリターンを行います。(28の異なる単語)

rand-yの群れを祝福(16進数ではない)値が罪を受け入れなくなるまで続けます。END時間を研究し、睡眠を受け入れて死にます。キーを確認し、各暗号ロックを閉じます。(25の異なる単語)

次の呼び出し元に、「フォークとパイプを使用し、プッシュ、ブレーク、削除、キル、および破棄」と伝えます。(13の異なる単語)


1

ハスケル(〜29-ish)

外部タイプの場合、データモジュールをインポートします。ここでforall、修飾クラスのすべて()について、非表示の場合はデフォルトを実行します(修飾されている場合はデータファミリのインスタンスを取得し、そうでない場合はタイプファミリのデータインスタンスを取得します)。それ以外の場合は、修正(infix)を入力します。

Haskellでは、data familyはから独立したキーワードでありdata、同様にtype family、およびderiving instanceから独立しderivingていinstanceます。私が使用していますforall、(一つだけを数えて)二つの単語としてwhere as1(カウント2)として、およびinfix2(カウント1)など。

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