Некоторые мои коллеги начали использовать Resharper с того момента на страницах, которые они отредактировали, были ужасны в расположении и удобочитаемости. Я рад сказать, что это не выжило, никто здесь не использует его больше.
Об операторе под рукой я соглашаюсь с Jeffrey Hantin, встроенным - если очень хорошо для такого типа оператора, и решение Whatsit очень приемлемо для. За некоторыми исключениями i (лично) говорят, что методы/функции должны иметь только 1 оператор возврата.
Также, если Вы (почти) всегда еще реализуете с Вашим, если (даже если это не ничто иное кроме строки комментария, указывая Вам, ни в чем не выполняют с еще-оператором) это вынуждает Вас думать о той ситуации, как правило, это может предотвратить ошибки.
Оба комментария должны использоваться, как 'думают о' не как правило, точно так же, как большая часть этого вида проблем, всегда используйте мозг:) большинство ошибок происходит, когда Вы не делаете.
В заключении: Скажите "нет" Resharper! (да, мне истинно не нравится Resharper, извините.)
Компилятор может быть написан даже с использованием машины Тьюринга - Универсальная машина Тьюринга в основном является компилятором / интерпретатором любой машины Тьюринга, поэтому любой Полный по Тьюрингу язык должен быть достаточно :)
Один из вариантов - цикл чтение-оценка-печать . Это можно использовать для создания многих конструкций более высокого уровня. Я считаю, что LISP выбрал именно этот путь.
Я не уверен в истоках C, но я думаю, что он начался с нескольких системных вызовов для реализации ветвления, циклов, присваивания и односимвольного ввода-вывода и построен на их основе.
Теоретически на удивление мало. Теоретик вычислимости сказал бы, что все, что вам нужно, это мю-рекурсия или машина Тьюринга или подобное.
Однако с практической точки зрения , вы не будете очень счастливы, пытаясь реализовать язык программирования на машине Тьюринга. Я бы сказал, что, как минимум, вы хотели бы иметь все обычные конструкции потока управления, примитивные типы данных, подпрограммы, а также массивы и структуры. Этого должно быть достаточно, чтобы позволить вам реализовать это подмножество языка в самом языке - и затем вы можете начать загрузку оттуда.
У меня такой вопрос: какое минимальное подмножество языковых функций, чтобы кто-то мог реализовать этот язык сам по себе?
Нет требования, чтобы язык был полезен для чего-либо, кроме сам компилируется? Я представляю вам Бесполезный
, язык, на котором каждый текст является правильной программой и означает «программу, которая принимает любой ввод и производит сама себя» (это также известно как Бесполезный
компилятор) .