F Sharp: відмінності між версіями
[неперевірена версія] | [неперевірена версія] |
Вилучено вміст Додано вміст
IvanBot (обговорення | внесок) м →Історія: replaced: незважаючи на те → попри те |
IvanBot (обговорення | внесок) м →Короткий огляд F#: replaced: Незважаючи на те → Попри те |
||
Рядок 6:
Найцікавіше, що це вперше функційна мова максимально адаптована до використання в [[.NET Framework]], відповідно, вона не заперечує і імперативного підходу. З тієї ж причини F# не особливо славиться серед пуристів функціонального програмування, хоча це нітрохи не применшує його достоїнств як повноцінної функціональної мови, що дозволяє скористатися перевагами багатообіцяючої парадигми.
Протягом тривалого часу F# існував як дослідницький проект, основним завданням якого було збагатити імперативну мову C# можливостями, традиційно доступними лише функціональним мовам. Безліччю нововведень C# 3.0 з VS 2008 завдячує саме йому. Сам по собі F # не створений з чистого аркуша в Microsoft, в його основу покладено досить популярний (якщо так взагалі можна говорити про функціональні мови) OCaml, який, у свою чергу, походить від одної з перших типізованих функціональних мов ML.
У цілому, поява F # в складі Visual Studio свідчить про те, що розробники з Microsoft покладають великі надії на функціональне програмування, що стало особливо актуальним в епоху багатоядерних процесорів і непомірно вирісшої складності внутрішньої структури вихідного коду великих проектів. Звичайно, F# не позиціонується як заміна традиційним універсальним імперативним мовам, зокрема C#, і їх розвиток у напрямку асиміляції найбільш вдалих ідей декларативного програмування не припиниться. Швидше за все, F#, як і багато інших функціональних мов, займе своє місце серед інших, спеціалізуючись на вирішенні певного класу задач так само, як, наприклад, SQL зайняв нішу інструментів для маніпулювання реляційними даними. Можна припустити, що в найближчому майбутньому володіння хоча б однією функціональною мовою з'явиться в числі професійних вимог до типового програміста, подібно до того як сьогодні необхідно знання того ж SQL.
|