私は関数型プログラミングを実験していますが、私はまだその概念を理解していません。あなたは、この概念を議論する良い本やチュートリアルや例を知っていますか?または、その使用法について小さなスニペットを表示できれば、それは素晴らしいことです。Homoiconicityについての詳しい情報はどこで入手できますか?
1
A
答えて
2
私はWhy Functional Programming MattersによってJohn Hughesが最高だと信じています。
4
lispまたはスキームを学んでください。言語はデータ構造であり、言語です。 LispコードとLispデータ構造は同じ構文規則を持っています。
tclを学ぶ場合は、手続き型の言語であるとで作業できます。データ構造の構文ルールはプログラミング言語の構文ルールと同じです。
厳密に言えば、機能プログラミングの問題ではありません。それは、データの構文規則と言語の構文規則が同じであるいくつかの言語の問題です。
1
1
REBOLはhomoiconic言語です。 REBOLのblock!
データ型は、LispのS式に似た有効なREBOLトークンが含まれる角括弧のセットです。例えば:少し違ったことを
series: [1 2 3 4]
foreach item series [
print item
]
それでは、表現してみましょう:
series: [1 2 3 4]
for-body: [print item] ; This is the body of our foreach
foreach item series for-body
は、それがデータとして宣言されたが、我々はforeach
関数に渡されたとき、私たちはコードとしてブロックfor-body
を治療しました。ブロックfor-body
の最初のアイテムのタイプが-type? first for-body
であることをREBOLに尋ねると、であり、function!
(またはnative!
またはaction!
または他のREBOL関数タイプのいずれも)ではありません。その理由は、データとして、for-body
はちょうどREBOL単語の評価されていないチャンクです。 foreach
に渡すと、コードとして評価されます。
REBOLを「Lispと似ていますが、かっこはありません」と言いましたが、私は個人的にはLispを好みますが、そうでないかもしれません。それでも、私が魅力的だと思うホモポリマー性について学びたいときは、まずは素晴らしい言葉です。
関連する問題
- 1. Java OpenStreetMap APIについての詳しい情報はどこで入手できますか?
- 2. アセンブリの詳細情報はどのように入手できますか?
- 3. XEEDとは何ですか?また、XEEDについての詳しい情報はどこで入手できますか?
- 4. eBayではどこでこの情報を入手できますか?
- 5. AVDに関する情報はどこで入手できますか?
- 6. 詳細パート情報の入手
- 7. オンラインファイルに関する詳細情報を入手できますか?
- 8. mongooseのエラーメッセージに関する詳細情報はどのように入手できますか?
- 9. User - Spring Securityより詳しい情報を入手
- 10. Samsung Devicesの開発に関するすべての情報はどこで入手できますか?
- 11. 私の位置情報はどのように入手できますか? [アンドロイド]
- 12. ディスク製造元の情報はどのように入手できますか?
- 13. クラウドサービスのビットを誰が配備したかについての情報を入手できますか?
- 14. ELFファイルに関する詳細情報の入手
- 15. ELFファイルに関する詳細情報の入手
- 16. アングル$ httpでは、-1ステータスコードに関する詳細情報を入手できますか?
- 17. マップボックスのような情報をどのように入手できますか?
- 18. Visual StudioでC/C++リンカに関する情報はどこで入手できますか?
- 19. ODBCおよびアクセスデータベースに関する高品質の情報はどこで入手できますか?
- 20. VOIPアプリのiOSファイルハンドラに関する情報はどこで入手できますか?
- 21. 実行ファイルがどこにあるかについての情報を入手する方法C++
- 22. iPhone:Sqliteテーブルで作成されたインデックスの情報はどこから入手できますか?
- 23. 私はcardviewの情報をどのように入手することができますか?
- 24. 次のSQLデータベースがある場合、この情報はどのように入手できますか?
- 25. 白い検索アイコンはどこで入手できますか?
- 26. 「optgroup」がcodeigniterから選択されたことについての情報はどのように入手できますか?
- 27. カルマが特定のリクエストをどのようにマッピングしているかについての情報を入手できますか?
- 28. エミュレータはどこでスタンドアロンアプリケーションとして入手できますか?
- 29. AmazonでMerchからSales and Orderの情報を入手するにはどうすればいいですか
- 30. Google Cloud Storage:バケット単位の統計情報はどこで入手できますか
機能プログラミングとホモポリマー性は、すべて互いに関連しているわけではありません。ほとんどの関数型言語はhomoiconicではなく、Common Lispのような特別な機能を持たないhomoiconic言語があります。実際、私が心配している限り、心に浮かぶ唯一の機能的なホモ型言語はClojureです。 –
Schemeは機能的言語とホモ言語の両方の言語です。 –