Запитання з тегом «language-design»

Питання, що стосуються дизайну та структури мов програмування.

1
Чому подвійна кишка замість крапки?
Він , по слухам , що в початку C ++ реалізація мала точковий оператор для доступу простору імен. Існує думка, що крапка зручніша, ніж сучасний оператор подвійної двокрапки. Що було міркуванням про введення подвійної кишки?

4
Чому саме PHP не може мати повну підтримку unicode?
Всім відомо, що у PHP є проблеми з Unicode. Версія 6 фактично скасована через труднощі з впровадженням Unicode. Але мені цікаво, чи хтось знає, які точні причини? Проблеми з архітектурою / дизайном, питаннями щодо продуктивності, проблемами громади (не сумніваюся), чимось іншим?

4
Які проблеми введення C ++ - як const у мову?
Мене цікавить ідея C ++ - як constне таке конкретне виконання (як відкидання const). Візьмемо для прикладу C # - йому не вистачає C ++ - як const, а причиною цього є звичайне - люди та час. Крім того, здається, що команда C # вивчила виконання C ++ const, маркетингу …

5
Чому Python повільніше Java, але швидше, ніж PHP [закрито]
Наразі це запитання не підходить для нашого формату запитань. Ми очікуємо, що відповіді будуть підкріплені фактами, посиланнями або експертними знаннями, але це питання, ймовірно, вимагатиме дискусій, аргументів, опитувань чи розширеної дискусії. Якщо ви вважаєте, що це питання можна вдосконалити та, можливо, знову відкрити, відвідайте довідковий центр для ознайомлення . Закрито …

3
Які міркування називати .NETs Select (Map) та Aggregate (Зменшити)?
В інших мовах програмування я бачив Map and Reduce, і це є основою функціонального програмування. Я не міг знайти жодних міркувань чи історії, чому LINQ має Aggregate(те саме Reduce) і Select(те саме, що Map)? Чому я прошу, що мені знадобився певний час, щоб зрозуміти, що це одне й те саме, …

10
Функція перевантаження? Так чи ні [закрито]
Наразі це запитання не підходить для нашого формату запитань. Ми очікуємо, що відповіді будуть підкріплені фактами, посиланнями або експертними знаннями, але це питання, ймовірно, вимагатиме дискусій, аргументів, опитувань чи розширеної дискусії. Якщо ви вважаєте, що це питання можна вдосконалити та, можливо, знову відкрити, відвідайте довідковий центр для ознайомлення . Закрито …

3
Якщо заднім числом базувати XAML на XML - це помилка чи гарний підхід?
XAML по суті є підмножиною XML. Одним з головних переваг базування XAML на XML є те, що він може розбиратися з існуючими інструментами. І це може значною мірою, хоча (синтаксично нетривіальні) значення атрибутів залишатимуться у текстовій формі та потребуватимуть подальшого розбору. Є дві основні альтернативи опису GUI на мові, похідній …

8
Чому C ++ все ще є "гібридом"
У відповідному питанні було з’ясовано, чому C ++ у багатьох аспектах не сумісний із C. Однак C ++ все ще є "гібридною" * мовою. І на жаль, багато програмістів все ще розглядають C ++ як "C із потоками та вбудованими рядками". Це призводить до дійсно поганого письмового коду, що це …

9
Професійні поради: доктор наук з теорії мов програмування [закрито]
Зачинено. Це питання поза темою . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно було тематичним для обміну стеками програмного забезпечення. Закрито 6 років тому . Мене дуже цікавлять теорії мов програмування і збираюся застосувати докторську ступінь у цій темі, але хочу знати більше про кар’єру …

2
Чи відмовляє Microsoft у використанні "var" у C #? (VS2017)
Я дивлюся на майбутню Visual Studio 2017 . У розділі під назвою « Підвищена продуктивність» є зображення Visual Studio, що використовується для заміни всіх подій var на явний тип. У коді, мабуть, є кілька проблем, які Visual Studio визначив як «потребує виправлення». Я хотів ще раз перевірити своє розуміння використання …

3
Чому творець Рубі вирішив використовувати поняття Символи?
tl; dr: Чи існувало б мовно-агностичне визначення символів та причина їх використання іншими мовами? Отже, чому творець Рубі використав поняття symbolsв мові? Я запитую це з точки зору нерубіного програміста. Я вивчив багато інших мов, і не знайшов жодної з них необхідність уточнювати, маю справу чи ні з тим, що …

5
Чому * оголошення * даних і функцій необхідне мовою C, коли визначення записується в кінці вихідного коду?
Розглянемо наступний код "С": #include<stdio.h> main() { printf("func:%d",Func_i()); } Func_i() { int i=3; return i; } Func_i()визначається в кінці вихідного коду, і перед його використанням не подається декларація main(). У той самий час , коли компілятор бачить Func_i()в main(), він виходить з main()і дізнається Func_i(). Компілятор якимось чином знаходить повернене …

1
Чи Groovy дотримується принципу листування Tennent?
Ось цікаве обговорення принципу листування Теннента та короткий опис Ніла Гафтера : Принцип диктує, що вираз або вислів, коли його завершують у закритій формі та негайно викликають, має мати те саме значення, що і раніше, ніж завернути у закриття. Будь-яка зміна семантики при загортанні коду в закриття, ймовірно, є недоліком …

3
Як система статичного типу впливає на дизайн мови, заснованої на прототипі?
Стаття Вікіпедії про мови-прототипи містить такий параграф: Практично всі системи на основі прототипів базуються на інтерпретованих та динамічно набраних мовах. Однак системи, засновані на статично типових мовах, є технічно здійсненними. Якими способами система статичного типу встановлює обмеження або вводить складність у мові, заснованій на прототипі, і чому існують більш динамічно …

7
Чому в Java захищені члени стали доступними для класів одного пакету?
З офіційної документації ... Підклас пакунків класу модифікаторів громадський РРРР захищений РРРР немає модифікатора YYNN приватний YNNN Справа в тому, що я не можу пригадати, щоб я мав випадок використання, коли мені потрібно було отримати доступ до захищених членів із класу в межах одного пакету. Якими були причини цього впровадження? …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.