Форум программистов, компьютерный форум, киберфорум
Священные войны
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.70/254: Рейтинг темы: голосов - 254, средняя оценка - 4.70
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
10.02.2015, 07:44
Студворк — интернет-сервис помощи студентам
врочем http://ideone.com/9EJope
ни одного импорта
жду эпичного фейла мощного (от слова мощи) дэ
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,781
10.02.2015, 09:57
Дано:
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
А эта тухлятина на экран что-нибудь выводит?
Code
1
let sins = [for x in 0.0..pi/2.0/9.0..pi/2.0 -> sin x]
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
так что тут "тухлого"?
Слишком много писанины, это свойственно энтерпрайз-языкам.
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
такой код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
import std.math;
import std.stdio;
import std.range;
 
void main()
{
    const beg = 0.0L;
    const interval = PI_2 / 9;
    const end = PI_2 + interval;
    
    auto sins = iota(beg, end, interval).map!sin;
    writefln("%(%.15g\n%)", sins);
}
Задача: найти логическую ошибку.
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 10:00  [ТС]
Цитата Сообщение от pycture Посмотреть сообщение
жду эпичного фейла мощного (от слова мощи) дэ
Да. Я принимаю эпичный фейл, потому что в D нельзя использовать конструкцию диапазонов a..b везде, кроме циклов foreach. Аналога операции -> в D тоже нет, поэтому приходится использовать map.

Хорошо. Теперь проверим F#. Инициализируй статический массив числами, введёнными с клавиатуры, и выведи массив на экран. Слабо?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import std.stdio;
 
void main()
{
    int[] a;
 
    int c;
    foreach (i; 0 .. 5) {
        readf(" %s", &c);
        a ~= c;
    }
 
    writeln(a);
}
http://ideone.com/1G2UfF

Добавлено через 2 минуты
Цитата Сообщение от korvin_ Посмотреть сообщение
Задача: найти логическую ошибку.
Нашёл:
C++
1
"%(%.15g\n%)".writefln(iota(0, PI/2, PI/2/9).map!sin);
0
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
10.02.2015, 11:36
это у дэ видимо такой рекурсивно-перманентый фейл намечается
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
Код дэ
очередная императивная каша с мутабельными состояниями

Code
1
printfn "%A" [for i in 1..5 -> System.Console.ReadLine() |> int]
http://ideone.com/mn2kDS
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 11:43  [ТС]
Цитата Сообщение от pycture Посмотреть сообщение
Code
1
printfn "%A" [for i in 1..5 -> System.Console.ReadLine() |> int]
И как же называется ваш статический массив?
0
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
10.02.2015, 11:50
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
И как же называется ваш статический массив?
его прям таки назвать надо? да не вопрос
Code
1
2
let a = [for i in 1..5 -> System.Console.ReadLine() |> int]
printfn "%A" a
0
Заблокирован
10.02.2015, 11:52
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
Уверен, что в D, даже с проверкой, кода будет намного меньше.
тогда продемонстрируйте

Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
Ev_Hyper, пора выбрасывать C# на помойку (много писанины)
Я специально привел такой код, хотел увидеть, как в D реализована работа с анонимными типами данных и т.д. Можно вообще в 1 строчку записать:
C#
1
2
3
            
Enumerable.Range(2, 10).ToList()
.ForEach(c => Console.WriteLine("{0,4}{1,4}{2,4}", 2 * c, c * c - 1, c * c + 1));
но вопрос не стоял записать за мин. число строк.

Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
Теперь проверим F#. Инициализируй статический массив числами, введёнными с клавиатуры, и выведи массив на экран. Слабо?
нет проблем (проверку типов не делал):
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 11:52  [ТС]
pycture, Вам английское сообщество D-программистов передаёт горячий привет :
Although D has a lot of language features, D tries to push
functionality into the library as often as possible. This is
better than having language features for everything, because you
can then reimplement, tweak or replace said features by simply
writing D code.
If someone makes stupid demands like this one to justify his
dislike for the language, such person is either deliberate troll
or has strong enough prejudice no never like language anyway,
arguments or not.

Language features don't magically appear from nowhere - those
come at cost of extra code in compiler and/or runtime library
making it very hard to use language with smaller runtime (D is
actually guilty of that).

It is a common practice to treat standard language library as
part of language. Both C and C++ include detailed spec on
standard library in official language spec for example. As such
making any distinction between two is impractical.
0
Заблокирован
10.02.2015, 11:59
Цитата Сообщение от pycture Посмотреть сообщение
Code
1
2
let a = [for i in 1..5 -> System.Console.ReadLine() |> int]
printfn "%A" a
pycture, спасибо, не знал, что можно напрямую выводить
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 12:00  [ТС]
Цитата Сообщение от Ev_Hyper Посмотреть сообщение
Я специально привел такой код, хотел увидеть, как в D реализована работа с анонимными типами данных и т.д.
Понравилось?
Цитата Сообщение от Ev_Hyper Посмотреть сообщение
нет проблем (проверку типов не делал):
Отлично. А теперь инициализируйте массив ещё одним элементом и выведите его на экран. Вот так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import std.stdio;
 
void main()
{
    int[] a;
 
    int c;
    foreach (i; 0 .. 5) {
        readf(" %s", &c);
        a ~= c;
    }
 
    writeln(a);
 
    a ~= 156;
 
    writeln(a);
}
http://ideone.com/127rFh
0
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
10.02.2015, 12:10
а теперь моя очередь унизить дэ
написать на дэ функцию вычисляющую результат битовой функции x = (a xor b xor c)
a b c могут быть 0 или 1
и вывести на эпран таблицу для всех состояний a b c и результат
главное условие! нельзя применять логические и битовые операторы для расчета функции и массивы
слабо на дэ?

Добавлено через 4 минуты
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
Вам английское сообщество D-программистов передаёт горячий привет
т.е. как только в дэ кончаются библиотеки так сразу начинается ...опа язык то сам вообще ничего не может, чтото без библиотек написать - сдуреть можно. так ?

Добавлено через 1 минуту
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
А теперь инициализируйте массив ещё одним элементом
... статический... угу.... а почему в конец добавка. в начало де не может?
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 12:14  [ТС]
Цитата Сообщение от pycture Посмотреть сообщение
язык то сам вообще ничего не может, чтото без библиотек написать - сдуреть можно. так ?
Если так смотреть, то C++ не может вообще ничего, кроме инициализации переменных.
Цитата Сообщение от pycture Посмотреть сообщение
... статический... угу.... а почему в конец добавка. в начало де не может?
А ты сделай в конец хотя бы. Что, на F# такое невозможно сделать со статическим массивом? Жуй попкорн.
Цитата Сообщение от pycture Посмотреть сообщение
слабо на дэ?
Попробую.
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,781
10.02.2015, 12:15
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
А теперь инициализируйте массив ещё одним элементом и выведите его на экран. Вот так:
Code
1
2
3
let (=~) xs x = Array.append xs [|x|]
let a = [| for i in 1..5 -> System.Console.ReadLine() |> int |]
printfn "%A" (a =~ 156)
http://ideone.com/eydaAI
0
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
10.02.2015, 12:18
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
такое невозможно сделать со статическим массивом
в любом языке. просто ты еще этого не знаешь

Добавлено через 47 секунд
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
Попробую.
давай. надеюсь строк в 50 уложишься
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 12:20  [ТС]
korvin_, вы использовали функцию .append. У нас теперь такие вещи запрещено использовать.
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,781
10.02.2015, 12:22
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
вы использовали функцию .append. У нас теперь такие вещи запрещено использовать.
Нет, тебе кажется, я использовал оператор (=~), прям как в этом вашем Ди.
0
Заблокирован
10.02.2015, 12:23
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
Понравилось?
нет, вы показали обычный кортеж.

Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
korvin_, вы использовали функцию .append. У нас теперь такие вещи запрещено использовать.
Это что еще за ограничения? Все, что предлагает ЯП можно использовать.
0
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
10.02.2015, 12:25
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
А ты сделай в конец хотя бы.

Не по теме:

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

так что там в дэ? в начало может он добавить?

Добавлено через 1 минуту
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
У нас теперь такие вещи запрещено использовать.
импорт есть? нету. все как в дэ.
test passed
0
 Аватар для Dennis Ritchie
555 / 148 / 58
Регистрация: 27.07.2014
Сообщений: 2,446
10.02.2015, 12:27  [ТС]
Цитата Сообщение от pycture Посмотреть сообщение
так что там в дэ? в начало может он добавить?
А что там со скоростью работы F#. Небось, ползает, как убитый медведь?

Добавлено через 25 секунд
Цитата Сообщение от pycture Посмотреть сообщение
test passed
Ну, ладно.
0
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
10.02.2015, 12:31
Цитата Сообщение от Dennis Ritchie Посмотреть сообщение
А что там со скоростью работы F#. Небось, ползает, как убитый медведь?
что задача не осиливается ищем за что б зацепиться? ну удачи. (ползает хорошо за него переживать не стоит)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Закрытая тема Создать тему
Новые блоги и статьи
Транскрипция 55-минутного видео через Whisper: WhisperDesktop облажался, спас Google Colab[
anaschu 01.06.2026
Понадобилось получить текст из свежезагруженного видео на YouTube. Казалось бы, задача на пять минут. Заняла полтора часа. Делюсь опытом — может кому пригодится последовательность решений. . . .
21 мат мед. Планы на развитие модели здравоСохранения
anaschu 01.06.2026
AnyLogic: план развития симуляционной модели рабочего коллектива — динамический абсентеизм, реальные данные, три сценария сравнения Продолжаю серию постов о дискретно-событийной модели рабочего. . .
20. Мат мед. Абсентеизм как отдельный тип простоя
anaschu 29.05.2026
Апдейт модели: исправленные баги, абсентеизм и новые механизмы Продолжаю развивать ранее описанную модель рабочего коллектива на AnyLogic. За последние несколько дней был проведён серьёзный. . .
19. здоровье, усталость и психотип работника влияют на производительность предприятия, и наоборот, производительность на здоровье, усталось и психотип
anaschu 28.05.2026
Дискретно-событийная модель рабочего коллектива на AnyLogic: здоровье, выгорание, психотипы и микростимуляция Привет, коллеги. Хочу поделиться итогами нескольких недель работы над симуляционной. . .
"Прокси" для последовательного порта
Eddy_Em 28.05.2026
Эту штуку написал я достаточно давно. Но сейчас вот понадобилось настроить датчик грозы, но при этом не отключать его от "метеодемона". Соответственно, надо запустить этот "прокси": метеодемон будет. . .
Рефакторинг программы уравнивания.
Massaraksh7 26.05.2026
Пример по предыдущей записи в блоге. Но, надо заметить, что, во-первых, там оптимизация не только математики, но и работы с базой данных, и с графами, а во-вторых, это ещё не всё.
Использование TThread в Lazarus для математических вычислений.
Massaraksh7 25.05.2026
Производя рефакторинг своих программ на предмет ускорения их работы, обратил внимание на такой аспект, как сокращение времени матвычислений. Дело в том, что приходится работать с большими матрицами. . .
Модель здравосохранения 18. Чем здоровее работник, тем быстрее выгорает
anaschu 24.05.2026
Имитационная модель корпоративного здравоохранения: что показывает математика Сегодня в модели рабочего коллектива на AnyLogic появились три новые механики — выгорание через накопленную усталость,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru