Вопросы с тегом «language-features»

Вопросы об отличительных аспектах определенных компьютерных языков, особенно в том, как они написаны или в выразительных возможностях, предоставляемых программисту.

155
Что такое закрытие?

Время от времени я вижу упомянутое «замыкание», и я пытался найти его, но Вики не дает объяснения, которое я понимаю. Может ли кто-нибудь помочь мне

88
Какие функции вы хотели бы иметь в PHP? [закрыто]

Так как сейчас сезон отпусков и все загадывают желания, мне интересно, какие языковые функции вы бы хотели добавить в PHP? Я заинтересован в некоторых практических предложениях / пожеланиях для языка. Под практическим я подразумеваю: Что-то, что можно сделать практически (не: «Я бы хотел, чтобы PHP...

61
Когда функция считается «гражданином первого класса» на языке программирования / платформе?

Я много раз видел такие высказывания, как: «Пожалуйста, сделайте эту функцию первоклассным гражданином на том или ином языке / платформе». Например, говорится о перечислениях в C # /. Net. Итак, когда функция считается «гражданином первого класса» на языке программирования /...

47
Зачем разрабатывать современный язык без механизма обработки исключений?

Многие современные языки предоставляют богатые функции обработки исключений , но язык программирования Apple Swift не предоставляет механизм обработки исключений . Несмотря на то, что я погружен в исключения, мне трудно понять, что это значит. Swift имеет утверждения и, конечно, возвращает...

41
Почему статические члены данных должны быть определены вне класса отдельно в C ++ (в отличие от Java)?

class A { static int foo () {} // ok static int x; // <--- needed to be defined separately in .cpp file }; Я не вижу необходимости A::xопределять отдельно в файле .cpp (или тот же файл для шаблонов). Почему нельзя A::xобъявить и определить одновременно? Было ли это запрещено по историческим...

38
Разработка на Java Python: какие концепции мне нужны, чтобы обернуть голову?

Предыстория: я пробежал несколько уроков и написал несколько небольших проектов. Все идет хорошо, используя Google и StackOverflow . Несколько раз за последние несколько дней я задавался вопросом: «Что мне не хватает?» - Я чувствую, что все еще думаю о Java, как я пишу на Python. Этот вопрос в...

37
Действительно ли возможно иметь «полезный» язык программирования, который не является полным по Тьюрингу?

Там, где принято считать, что язык должен быть полным по Тьюрингу, чтобы быть хорошим, действительно ли возможно иметь «полезный» язык программирования, который не является полным по Тьюрингу? Я должен пояснить, что речь идет о языках «программирования» в традиционном смысле, а не о языках разметки...

36
Что такое 4 и 5 поколения языков программирования? Их больше? [закрыто]

Поскольку это часто классифицируется на уровне школы / колледжа, популярные языки программирования (C #, Java, C ++) - это все языки 3-го поколения (с более высоким уровнем абстракции от физических частей машины). Кроме того, языки ассемблера классифицируются как 2-е, а машинные языки - как языки...

34
Почему большинство основных языков не поддерживают синтаксис «x <y <z» для трехсторонних логических сравнений?

Если я хочу сравнить два числа (или другие хорошо упорядоченные объекты), я бы сделал это с x < y. Если я захочу сравнить три из них, ученик средней школы по алгебре предложит попробовать x < y < z. Затем программист во мне ответит: «Нет, это не правильно, вы должны это сделать x < y...

33
Является ли система типов Haskell препятствием для понимания функционального программирования? [закрыто]

Я изучаю Haskell с целью понимания функционального программирования, ожидая, что я буду применять полученные знания на других языках (в основном Groovy, Python, JavaScript). Я выбрал Haskell, потому что у меня сложилось впечатление, что он очень чисто функциональный и не допускает никакой...

30
Почему изучение lisp-интерпретатора в lisp так важно?

Я видел много учебных программ по CS и предложения для новых программистов, которые призывают начинающего программиста изучать интерпретатор lisp, который специально написан на lisp. Все эти сайты говорят что-то вроде «своего интеллектуального откровения», «это опыт просветления, который должен...

30
Почему `void *` неявно приводится в C ++?

В C нет необходимости приводить void *к любому другому типу указателя, это всегда безопасно продвигается. Однако в C ++ это не так. Например, int *a = malloc(sizeof(int)); работает в C, но не в C ++. (Примечание: я знаю, что вам не следует использовать mallocв C ++ или в этом отношении new, и...

26
Язык программирования, где каждый вызов функции / блок выполняется в отдельном потоке? [закрыто]

Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он фокусировался только на одной проблеме, редактируя этот пост . Закрыто 2 года назад . В настоящее время я создаю язык программирования для...

25
Почему закрытый член доступен в статическом методе?

Ниже приведен псевдокод, я пробовал его на Java и PHP, и оба работали: class Test { private int a = 5; public static function do_test(){ var t = new Test(); t.a = 1; print t.a // 1 } } Test::do_test(); Почему вы можете сделать это в парадигме ООП и какая от этого...

25
Почему базы данных не интегрированы как языковая функция?

Существуют ли какие-либо языки программирования, которые имеют встроенную базу данных в качестве первоклассной языковой функции вместо подключения к внешней базе данных SQL (или другой)? Каковы будут недостатки и преимущества такой функции? Как будет выглядеть такая функция и как она изменит способ...

24
Считается ли оператор Java instanceof отражением, и что определяет отражение?

Сегодня я обсуждал с коллегой, является ли использование оператора Java instanceofсвоего рода отражением. И дискуссия быстро переросла в то, что на самом деле определяет отражение. Итак, каково определение отражения? И считается ли использование instanceof«использованием отражения»? И, кроме того,...

23
В C #, почему переменные, объявленные внутри блока try, ограничены в области видимости?

Я хочу добавить обработку ошибок в: var firstVariable = 1; var secondVariable = firstVariable; Ниже не будет компилироваться: try { var firstVariable = 1; } catch {} try { var secondVariable = firstVariable; } catch {} Почему блок try catch должен влиять на область видимости переменных, как это...

22
Как я могу сказать, что язык программирования компилируется на другие языки?

Как я могу сказать по-английски, что язык программирования может быть скомпилирован с другими языками программирования? Примером может быть Haxe . На сайте язык расшифровывается как «Мультиплатформа»: Мультиплатформенность: Haxe может быть скомпилирован для всех популярных платформ программирования...

20
Интересные или уникальные типы в языках программирования? [закрыто]

В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и,...

18
Как продвигается работа над записями на Haskell?

Недавно я еще раз наткнулся на вопросы записей Хаскелла, в частности на уникальность имен полей. (Это боль ...) Я уже прочитал предложение о записи в Haskell от SPJ и Грега Моррисетта, но его последнее обновление было в 2003 году. Другая статья под названием Lightweight Extensible Records для...