Pull to refresh
-1
0

Пользователь

Send message
Я даже знаю язык, который не то что ключевых слов, даже спецсимволов не содержит.

Заголовок спойлера
Forth
я лично считаю, что язык программирования не должен иметь общих слов с естественными языками

Как-то так?
Варкалось();
хливкие[шорьки].пырялисьПо(наве) и хрюкотали(зелюки).как(мюмзикиВМове);
Онлайн-версия на английском более актуальная, примеры для ANS-стандарта.

Хотя, тут языки с динамической типизацией считают плохими для обучения, а в форте типизации вообше никакой…
Чтобы выделять/освобождать память в куче нужно вызывать аллокатор, да и указатель через что-то же надо передавать, а число регистров ограничено. А в случае стека это просто инкремент/декремент, а если с отдельными стеками для данных и возвратов, то нет и потенциальных уязвимостей + появляется возможность очень просто возвращать несколько значений.

Но почему-то кроме фортеров никто так не делает.
Фу, вербозно и нечитаемо.

J:
load 'primitives'

NB. получает последовательность, возвращает следующий элемент
next =: tally - 1 + curtail indexoflast tail

NB. добавляем следующий элемент к последовательности x-1 раз
vanEck =: dyad def '(, next)power(x - 1) y'

NB. любуемся
echo 100 vanEck 0
Я слышал что старая макось на паскале была. И, вроде бы, когда-то Photoshop.
Классика бессмертна.

Я немного удивился, когда узнал что компиляторы до сих пор поддерживают такой синтаксис:
int main(argc, argv)
int argc;
char *argv[];
Но так уже почти никто не пишет.

Еще неявный int был убран из C99, но от компиляторов больше варнинга ничего не увидишь. И так тоже не пишут.

В принципе кроме самого Си ничего больше устаревшего нет, даже флаги у компиляторов за много лет те же остались.

З.Ы. Почему то в старых сорцах сорцах постоянно вижу выражение у return в скобках, несовместимости конечно никакой нет, но просто интересно, зачем так делали? Это синтаксис раньше такой был? Или это чтобы return можно было макросом заменить?
Да все, но я имею ввиду не надо будет руками выписывать все элементы подряд до нужных, а только те, которые мне нужны, а остальные меня не волнуют.
В сях еще есть синтаксис для инициализации массивов:
char map[256] = {['1'] = 1, ['2'] = 2,};
Удобно когда нужно инициализировать только некоторые элементы.
В крестах такого нет.

Еще по-моему в крестах нет __VA_ARGS__.

Вобщем кресты — говно.
Вы правда не знаете что существуют архитектуры, отличные от ПК, и что компьютер может не иметь видеокарты?
Разве нельзя отдельно скомпилировать фортрановскую либу и использовать её из любого языка? Этого, вроде, никто не запрещал.

использовать CUDA и OpenCL для параллельных вычислений и работы с матрицами!

А без видюхи эти ваши вычисления как работать будут? Фортран вроде как ориентирован на эффективную обработку массивов.
Ок.

Арифметическое отрицание значения INT_MIN — неопределенное поведение => арифметическое отрицание не может быть валидной конструкцией (а так же вообще все арифметические операции, при которых может произойти переполнение).
Некоторые могут сказать, что чем меньше строк кода в приложении, тем легче его читать.

Интересно, те кто это говорят когда-нибудь видели J?
К тому, что я тупой. Просто почему-то подумал, что в питончике переменная цикла видна только внутри цикла. Можете не обращать внимания.
Фи, ваш жаваскрипт не на всякой платформе работает.
Лучше на форте, где его только не реализовали, его тут недавно даже на МК-161 портировали.
Вот где кроссплатформенность! ;)
    cdef int i
    for i in range(1, x+1):
        y *= i
А после такого объявления переменная будет видна после цикла или нет?
Транслятор более общее понятие. Интерпретатор тоже транслятор.

Я всё-таки прочитал статью и посмотрел примеры, тут вообще нет никакого «транслятора» кроме самого сишарпа. Тут просто генератор кода (да и название статьи намекает ;). Код генерируется вызовами методов из этой либы. Вот если писать компилятор, то эта либа может пригодиться для бэкэнда.

Забавная цепочка: C# компилируется в дотнетовский байткод, затем этот байткод JIT'ится в нативный и исполняется, им генерируется ассемблерный листинг, который сперва препроцессируется и только после транслируется в код для AVR.

P.S. Почему-то принял вас за автора, видимо из-за похожего строения ника :)

Information

Rating
Does not participate
Location
Улан-Удэ, Бурятия, Россия
Registered
Activity