[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Программирование научных программ на C.



On Saturday, February 8, 2014 10:20:01 PM UTC+4, Dmitrii Kashin wrote:
> > В ручную - можно по-разному.  Можно на бумашке карандашиком,
> > а можно наконец узнать о существовании современных CAS.
> А по делу, или, скажем, поподробнее?

Да я, вроде как, по делу.  "Подробнее" сложно: упрощать
всякие крокодилы - это целая наука.  Что "на бумашке", что
с помощью компьютера.

Напр, в качестве эквивалента RATSUBST в sympy можно
использовать что-то типа этого:
In [91]: var("x,y,t")
Out[91]:
(x, y, t)

In [92]: e = (x + y)**2 + x + y + 1

In [93]: e.subs(x + y, t)
Out[93]: 
 2        
t  + t + 1

"Недостаток" максимы в том, что когда вы захотите
чего-то нетривиального и попробуете залезть в ее потроха - вы
получите древний лисп-код (одной из первых в мире CAS, напомнить
про первый блин?), который в мире понимает десяток (хорошо если!)
с хвостиком человеков...

> > Да, покуда вы не научитесь использовать эффективные алгоритмы.  Разруха - 
> > она помним где? ;)
> Не знаю где. Это поговорка?

Это классическая литература.

> > По википедии знакомиться с чем-либо - не хорошо и не плохо.  Это глупо.
> Не знакомиться, а почитать небольшой summary, что это в целом
> такое. Есть разница.

Нет.  Для summary - есть страница проекта.

> > C++ там нету)
> > sk@darkstar:~/src/julia $ find . -name '*.c'|wc -l
> > 64
> > sk@darkstar:~/src/julia $ find . -name '*.C' -o -name '*.cpp'|wc -l
> > 8
> 
> Ну, во-первых, -iname, во-вторых .cxx забыли, потом 64 - это уже немало,

Во-первых - вам в ман.  Я хочу различать .C и .c.

А во-вторых, того что я "забыл" - там нету...
sk@darkstar:~/src/julia $ find . -name *.C
sk@darkstar:~/src/julia $ find . -name *.cxx
sk@darkstar:~/src/julia $ 

В третьих, 64 - это C, не C++.

> и я всё же хочу остаться в рамках GCC, LLVM трогать мне не хочется.

Чудак-человек.  Ему предлагают использовать высокоуровневый
язык, а он все норовит на C писать...

> > Из перечисленного - ничего кроме Perl и не попадает в
> > озвученную категорию.  Bash/Zsh - просто DSL.  Да и перл...
> Я не знаю как расшифровать DSL. Вас не затруднит?

http://en.wikipedia.org/wiki/Domain-specific_language

Вторая ссылка на эту вашу википедию...


Reply to: