The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Анализ популярности языков программирования в 2010 году, opennews (ok), 11-Янв-11, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


97. "Анализ популярности языков программирования в 2010 году"  +/
Сообщение от JL2001 (ok), 12-Янв-11, 11:33 
>[оверквотинг удален]
>> класс) с указанием компилятору требований необходимой реализации чтоб сам компилятор выбрал
>> из наличествующих реализаций конкретный класс под требования ?
>> b) отдельно - есть ли языки программирования с "алгоритмическим" (типо блоксхемно-описательным)
>> стилем ?
>> c) существуют ли языки (не программирования а описательные скорее) с удобной или
>> автоматической валидацией теорем-утверждений, с удобной работой с самими утверждениями
>> ?
>> типо есть аксиомы и по ним проверять теоремы, раскладывать теоремы на составляющие
>> теоремы и аксиомы
> По всем этим вопросам можно смело стереотипно ответить - да ))

"имя!! назови мне имя!!!!" (с)

Ответить | Правка | Наверх | Cообщить модератору

101. "Анализ популярности языков программирования в 2010 году"  +/
Сообщение от Кырыл (?), 12-Янв-11, 15:48 
Да имён - масса. Всё, что вызвало ваши вопросы, реализовано и существует. В работу большинство современных промышленных компиляторов вмешивать не имеет смысла. Можно, конечно, что-то покрутить в препроцессоре, но толку от этого, скорее всего, не будет. Лучшие компилятор сейчас довольно интеллектуальны. Уж точно, более интеллектуальны, чем средний прогер.

Большинство ОО-языков имеют общий объектный тип, вроде id в obj-c. И динамическая типизация вполне успешно применяется на практике. У неё есть свои явные плюсы, но и свои явные минусы.

UML имеет развитые средства описания ограничений и трансляции диаграмм в целевой код.

>> типо есть аксиомы и по ним проверять теоремы, раскладывать теоремы на составляющие
>> теоремы и аксиомы

Функциональные языки позволяют реализовать нечто подобное.

Ответить | Правка | Наверх | Cообщить модератору

103. "Анализ популярности языков программирования в 2010 году"  +/
Сообщение от JL2001 (ok), 12-Янв-11, 20:32 
> В работу большинство современных промышленных компиляторов вмешивать не имеет смысла.
> Можно, конечно, что-то покрутить в препроцессоре, но толку от этого, скорее
> всего, не будет. Лучшие компилятор сейчас довольно интеллектуальны. Уж точно, более
> интеллектуальны, чем средний прогер.

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


> Большинство ОО-языков имеют общий объектный тип, вроде id в obj-c. И динамическая
> типизация вполне успешно применяется на практике. У неё есть свои явные
> плюсы, но и свои явные минусы.

либо я вас не понял, либо вы меня
динамическая типизация позволяет мне сделать такое ?

Интерфейс ИнтерфейсЕда {
function void сьесть()
}

Класс Помидор реализует ИнтерфейсЕда {
@Красное //описание свойств класса или автовычислимое компилятором или заботливо созданное программистом

function void сьесть() @вес 150 калорий //описание свойств метода класса --//--
}
Класс Огурец реализует ИнтерфейсЕда {
@Зелёное
@вес 350 калорий
}
Класс Яблоко реализует ИнтерфейсЕда {
@Красное
@вес 1350 калорий
}
Класс Морковь реализует ИнтерфейсЕда {
@Красное
@вес 50 калорий
}

ИнтерфейсЕда a = new ИнтерфейсЕда()[пусть она красная; пусть в сьесть() калорий < 200]

и в результате у меня в a - Морковь или Помидор (что из них конкретно - выбирается по внутренним соображениям компилятора)

например я бы хотел использовать вместо цвета - вес класса, а вместо калорийности - время выполнения метода при входящих параметрах x, y и z


> UML имеет развитые средства описания ограничений и трансляции диаграмм в целевой код.

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


>>> типо есть аксиомы и по ним проверять теоремы, раскладывать теоремы на составляющие
>>> теоремы и аксиомы
> Функциональные языки позволяют реализовать нечто подобное.

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

Ответить | Правка | Наверх | Cообщить модератору

108. "Анализ популярности языков программирования в 2010 году"  +/
Сообщение от angra (ok), 13-Янв-11, 00:07 
> например я бы хотел использовать вместо цвета - вес класса, а вместо
> калорийности - время выполнения метода при входящих параметрах x, y и z

Как только вы сможете дать математическиое определение таким понятиям как "вес класса" и "время выполнения метода при входящих параметрах x, y и z". Даю подсказку, следущие параметры в общем случае никак не связаны между собой: количество строк исходного кода, время компиляции, объем байткода, результирующее количество инструкций процессора, потребляемая память различных видов, процессорное время, реальное время, нагрузка на IO. Также стоит помнить, что кроме воображаемого мира адептов функциональщины существует еще реальный мир, в котором время выполнения и результат функций/методов зависит от состояния внешних объектов.


> многие жалуются на результаты такой трансляции и говорят что приходится полностью самостоятельно
> переписывать, а UML подходит только чтоб эти схемы на стену повесить
> и смотря на них кодить

А многие жалуются на отсутствие кнопки "сделать все за меня" и что дальше? UML это инструмент, применять нужно с умом и в подходящих условиях. Ожидать что он сделает за вас всю работу просто глупо, а вот сократить рутину и улучшить читабельность вполне может.

Ответить | Правка | Наверх | Cообщить модератору

109. "Анализ популярности языков программирования в 2010 году"  +/
Сообщение от JL2001 (ok), 13-Янв-11, 01:56 
>> например я бы хотел использовать вместо цвета - вес класса, а вместо
>> калорийности - время выполнения метода при входящих параметрах x, y и z
> Как только вы сможете дать математическиое определение таким понятиям как "вес класса"
> и "время выполнения метода при входящих параметрах x, y и z".
> Даю подсказку, следущие параметры в общем случае никак не связаны между
> собой: количество строк исходного кода, время компиляции, объем байткода, результирующее
> количество инструкций процессора, потребляемая память различных видов, процессорное
> время, реальное время, нагрузка на IO. Также стоит помнить, что кроме
> воображаемого мира адептов функциональщины существует еще реальный мир, в котором время
> выполнения и результат функций/методов зависит от состояния внешних объектов.

алгоритмы часто имеют известную сложность от входящих и потребление памяти в логических единицах от входящих (а ещё их можно множить на размер логических единиц в байтах)

а f(g(n)) при работе с внешним объектом с характеристикой g(n) вполне считать можно
зы: ни кто не мешает в "условиях вызова" указывать диапазоны значений, а в условиях функций - диапазоны и характерные функции к ним


> UML это инструмент, применять нужно с умом и в подходящих
> условиях. Ожидать что он сделает за вас всю работу просто глупо

а почему собсно бы и не всю работу ? UML я правда лично ещё не смотрел толком но не понимаю что мешает из блоксхемы с нормально расписанными условиями, циклами и прочим делать нормальный код, разбитый по модулям/классам в соответствии с разбивкой в блоксхеме
по крайней мере для жавы я представляю себе и преобразование кода в блоксхему и обратное преобразование

зы: и я таки хочу всё вместе:

и возможность описания требуемых мне автоматических оптимизаций

и возможность описывать код характеризующими функциями с возможностью выбора оптимального варианта для данных входных значений компилятором (фактически сейчас это можно реализовывать через фабрику-обёртку-дао где делать ифы и по результатам возвращать оптимум - НО это приходится делать руками... работу с объектами можно тоже сделать через функциональщину - но ручками то писать неохото когда за человека способна поработать железяка - прописать таблицы вызовов и выбор, попутно ещё и оптимизировав... что-то в этом духе http://rainman-rocks.livejournal.com/122876.html ==> повышаем декларативность так сказать..)

и возможность переходить в блоксхемный вид (куда более наглядный и раскрывающий связи) и обратно с возможностью "писать код" в обоих по своему выбору где мне удобнее (тоесть преобразование язык-блоксхема должно быть достаточно однозначным)

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру