Програмирование графических примитивов в духе QBasic

 
1 2 3 4 5
RU Balancer #04.11.2010 17:09  @Сергей-4030#04.11.2010 17:05
+
-
edit
 

Balancer

администратор
★★★★★
Сергей-4030> Это непоследовательно.

Да где же? :)

Сергей-4030> Если на удобство средства разработки положить тяжелый и толстый, то кого волнует производительность?

Весьма распространённая ситуация :) Между прочим, я бы даже сказал, что когда волнует производительность, то очень часто «тяжёлый и толстый» кладётся на удобство разработки. Нередко удобство разработки и производительность результата - диаметрально противоположны :)
 3.6.113.6.11
US Сергей-4030 #04.11.2010 17:24  @Balancer#04.11.2010 17:09
+
-
edit
 

Сергей-4030

исключающий третье
★★
Balancer> Весьма распространённая ситуация :) Между прочим, я бы даже сказал, что когда волнует производительность, то очень часто «тяжёлый и толстый» кладётся на удобство разработки. Нередко удобство разработки и производительность результата - диаметрально противоположны :)

OK, неудачно выразился. Следовало сказать так - "если средства выбираются любительские, то и производительность волновать не должна".
 7.0.517.417.0.517.41
RU Balancer #04.11.2010 19:19  @Сергей-4030#04.11.2010 17:24
+
-
edit
 

Balancer

администратор
★★★★★
Сергей-4030> OK, неудачно выразился. Следовало сказать так - "если средства выбираются любительские, то и производительность волновать не должна".

Тем не менее - волнует :)

При чём это не такая и редкая ситуация... В первом сообщении я упомянул о паре человек, которых заинтересовала простая графика такого уровня. Одному из них производительность весьма важна. Настолько, что он готов старый QB45 променять на Python. Но не настолько важна, чтобы изучать концептуально иные системы, будь то GNUPlot, R, Mathcad или HTML5 ;)

Если же отвлечься от графики, то ещё пару человек вспомню, кто до сих пор программирует научные расчёты на QB. Они - учёные, не программисты. У них уже есть более-менее работающие инструменты и они их почти удовлетворяют. Почти - потому что готовы поменять на что-то близкое и простое, но не требующее переучивания и переориентирования навыков. Им тоже Питон вполне себе подходит. Не стоит забывать, что это - внук Бейсика. Так что для людей, привыкших к этому языку, переход будет одним из самых безболезненных.

...

Ещё больше знакомых просто тупо работают с инструментами, написанными 15-20 лет назад и даже на задумываются об их замене. Они - вообще сами ничего не программируют :)

...

Это студенту или программисту (которые по состоянию дел на рынке - вечные студенты) переучиться легко. А для людей с другим складом мышления нередко всё бывает много сложнее. Есть такие, что клавиатуру на новую и то поменять категорически отказываются :D
 7.0.517.417.0.517.41
RU Dem_anywhere #05.11.2010 11:51  @Balancer#03.11.2010 16:37
+
-
edit
 

Dem_anywhere

аксакал
★☆

Dem_anywhere>> Такое впечатление, что это сильно отличается...
Balancer> Что такое "e"? ;)
Это прилетевший вместе с евентом аргумент. В котором находится объект для отрисовки (Graphics) и прочая лабуда.
А у него методы для отрисовки почти всего есть.
 3.5.153.5.15
+
-
edit
 

Balancer

администратор
★★★★★
Dem_anywhere> Это прилетевший вместе с евентом аргумент.

Почему нигде не видно, откуда он прилетел? :)

Вот я привёл законченный полный пример кода. А в ответ - две строчки, вырванных из контекста. Не в тему выходит ;)
 3.6.123.6.12

yacc

старожил
★★☆
Balancer> Тем не менее - волнует :)
Balancer> Одному из них производительность весьма важна. Настолько, что он готов старый QB45 променять на Python.
Хе... ну о какой производительности можно говорить на интерпретируемых языках? :)
Производительность - это минимум компилируемый Фортран или Паскаль.
Очень я бы сказал странный человек... :P

... помнится мне надо было обсчитать цифровой нерекурсивный фильтр по бакалаврской. Так на Синклере с его бейсиком считать было просто несерьезно - он так тормозил... Даже XT с фортраном обгоняла ее минимум на пару порядков. ( при не сильно отличающейся тактовой процессора 3.5 против 4.77 )

С QB я бы еще понял портабельность - его перетащить на другую машину без инсталляции очень просто при том, что он компактный. О Питоне этого не скажешь - ActivePython желательно инсталлировать. Тем более накатывать на него GASP...
 3.5.93.5.9
Это сообщение редактировалось 05.11.2010 в 14:46

Balancer

администратор
★★★★★
yacc> Хе... ну о какой производительности можно говорить на интерпретируемых языках? :)

А тебе приходится сегодня сталкиваться с интерпретируемыми языками? С какими? Bash и JavaScript не в счёт :)

yacc> Производительность - это минимум компилируемый Фортран или Паскаль.

Но это и другой уровень программирования. А на шкале производительности Паскаль — Бейсик, Питон находится гораздо ближе к Паскалю :)

Надо будет обновить тему Мерянье пи... э... попугаями. Быстродействие языков.

yacc> Очень я бы сказал странный человек... :P

Не один человек. Несколько и разных :D

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

Кстати, опять же, ты забываешь о богатых научных и вычислительных библиотеках на Питоне. Можно тот же Фортран из Питона вызывать, если понадобится, но уже без Фортрановских извращений :D

- SciPy -
- F2PY: Fortran to Python interface generator

и т.п.

yacc> Так на Синклере с его бейсиком считать было просто несерьезно - он так тормозил...

С тех пор очень многое поменялось :)

yacc> при не сильно отличающейся тактовой процессора 3.5 против 4.77

Конечно, если не учитывать ещё и разрядность ;) А так - да, Бейсик на Спектруме был чистым интерпретатором. Вот только уже на PC, догадайся, за счёт чего быстродействие qbasic.exe и qb45.exe отличалось в 10 раз? ;)

yacc> С QB я бы еще понял портабельность - его перетащить на другую машину без инсталляции очень просто при том, что он компактный. О Питоне этого не скажешь

Гы. С точки зрения портабельности у них полны паритет. Зато (кроме быстродействия, библиотек и удобства) у Питона ещё бонус в мультиплатформенности :) Windows, все UNIX (в т.ч. FreeBSD и Linux), Plan 9, Mac OS всех видов, iPhone OS, Palm OS, OS/2, Amiga, AS/400 и даже OS/390, Symbian, WinCE, Android...
 3.6.123.6.12

yacc

старожил
★★☆
Balancer> А тебе приходится сегодня сталкиваться с интерпретируемыми языками? С какими? Bash и JavaScript не в счёт :)
Ну почему - perl например. :)

Balancer> Но это и другой уровень программирования. А на шкале производительности Паскаль — Бейсик, Питон находится гораздо ближе к Паскалю :)
Но тем не менее - не паскаль.

Balancer> Не один человек. Несколько и разных :D
Ну значит "странный" во множественном числе :)

Balancer> Кстати, опять же, ты забываешь о богатых научных и вычислительных библиотеках на Питоне. Можно тот же Фортран из Питона вызывать, если понадобится, но уже без Фортрановских извращений :D
Да тут речь как бы про Бейсик. Мне вот жутко интересно - какие ТАМ научные библиотеки используются? Свои собственные? :)

Balancer> Конечно, если не учитывать ещё и разрядность ;)
А где? Вспомни Intel 8088

Balancer> Вот только уже на PC, догадайся, за счёт чего быстродействие qbasic.exe и qb45.exe отличалось в 10 раз? ;)
Да ясень пень - там и памяти больше было ( в виде того же винчестера ). Без нее ты особо не покомпилируешь. TR-DOS для файловой системы - неудобная.

Balancer> Гы. С точки зрения портабельности у них полны паритет.
Я бы так не сказал. Весь qb мне достаточно взять на флешке. Классический питон - не portable вариант - он инсталляции требует.

Balancer>Зато (кроме быстродействия, библиотек и удобства) у Питона ещё бонус в мультиплатформенности :)
Имхо конечно - но каким местом человек думал о библиотеках, разрабатывая на бейсике?

Balancer> Windows, все UNIX (в т.ч. FreeBSD и Linux), Plan 9, Mac OS всех видов, iPhone OS, Palm OS, OS/2, Amiga, AS/400 и даже OS/390, Symbian, WinCE, Android...
Ром, слишком избыточный ты список предоставил, чтобы похвалиться. Мне смутно верится в то, челеовек который GNUPlot пользоваться-то не собирается учится, будет гонять это все на предоставленном тобой списке.
Даже дельфийцы нас Сишников тогда осаждали - "А нахрена нам ваш Юникс Линкус и иже с ними, если считать мы будем все равно под виндами и наши преподы - тоже". :)
 3.5.93.5.9

Balancer

администратор
★★★★★
yacc> Ну почему - perl например. :)

Компилируется в байткод.

yacc> Но тем не менее - не паскаль.

Так и проще намного :)

yacc> Да тут речь как бы про Бейсик.

Мухи - это одно, а котлеты - другое. Те, кто пользуется сегодня Бейсиком пользуется по историческим причинам, а не из-за его преимуществ. Как раз тема о том и идёт, что если Бейсик менять, то лучше всего (для описанных случаев) - на Питон.

yacc> А где? Вспомни Intel 8088

И что? Разрядность регистров и их количество у 8086 и 8088 одинаковое. Как и система команд. На 8080 даже умножение приходилось эмулировать, а тут - аппаратное.

Balancer>> за счёт чего быстродействие qbasic.exe и qb45.exe отличалось в 10 раз? ;)
yacc> Да ясень пень - там и памяти больше было

Память тут на десятом месте. qbasic.exe - интерпретатор. qb45.exe - компилятор.

yacc> Я бы так не сказал. Весь qb мне достаточно взять на флешке. Классический питон - не portable вариант - он инсталляции требует.


Да не требует он ничего. Если лениво самому разбираться, какие библиотеки нужны, какие - нет, воспользуйся одним из готовых решений, например, Portable Python

yacc> Имхо конечно - но каким местом человек думал о библиотеках, разрабатывая на бейсике?

Например, потому что 20 лет назад в институте преподавали только Бейсик. Думаю, уже этой причины должно по уши хватить для объяснения 90% таких случаев :)

yacc> Ром, слишком избыточный ты список предоставил, чтобы похвалиться.

Хорошо, сам урежь его до приемлемой для тебя величины :D
 3.6.123.6.12

yacc

старожил
★★☆
Balancer> Компилируется в байткод.
На этапе каждого исполнения - для этого требуется оперативка.

Balancer> Так и проще намного :)
Паскаль тоже несложный. Но если хочется простоты - Фортран.

Balancer> Мухи - это одно, а котлеты - другое.
Э не - ты ж с Бэйсика начал.

Balancer>Те, кто пользуется сегодня Бейсиком пользуется по историческим причинам, а не из-за его преимуществ.
Ну... Фортран из той же песни. :)

Balancer>Как раз тема о том и идёт, что если Бейсик менять, то лучше всего (для описанных случаев) - на Питон.
Не спорю - синтаксис на определение процедур - схожий.

Balancer> И что? Разрядность регистров и их количество у 8086 и 8088 одинаковое. Как и система команд. На 8080 даже умножение приходилось эмулировать, а тут - аппаратное.
Для вычислений с плавающей точкой - и там и там эмулировать.

Balancer> Память тут на десятом месте. qbasic.exe - интерпретатор. qb45.exe - компилятор.
Для компиляции, Ром, нужна память. :)

Balancer> Да не требует он ничего. Если лениво самому разбираться, какие библиотеки нужны, какие - нет, воспользуйся одним из готовых решений, например, Portable Python
Лениво. Я не так давно его изучаю. И вот эта фраза "Portable Python is beta software and it will probably always be beta software." меня, как не шибко опытного, не радует :) - в твоей ссылке, если зайти по "about". И я не уверен, что твои знакомые смогут самостоятельно туда приладить GASP. И опять там инсталлер. Как я понимаю твоим знакомым надо чтобы был некий магический exe-файл, который достаточно запустить чтобы быть счастливым. Здесь это опять не так.

К слову, по этой причине, для строкоразбора я последнее время предпочитаю awk ( хотя всегда это делал не перле ) - по одной простой причине - это один exe-файл. Тестеры, которым ребята советуют питон, не очень хотят с ним связываться - на свежую машинку надо его инсталлировать. И мой awk тут очень рулит :)

Balancer> Например, потому что 20 лет назад в институте преподавали только Бейсик.
Странно. Обычно преподавали фортран :)

Balancer> Хорошо, сам урежь его до приемлемой для тебя величины :D
Win32 :)
 3.5.93.5.9

Balancer

администратор
★★★★★
Balancer>> Компилируется в байткод.
yacc> На этапе каждого исполнения

На этапе исполнения и x86-код сегодня интерпретируется :)

Короче, начинается старая песня. В поиск :)

yacc> Паскаль тоже несложный.

Заметно сложнее Бейсика. А уж для тех, кто учил Бейсик и не учил Паскаль... :D

yacc> Но если хочется простоты - Фортран.

Спасибо, не нужно. Он тяжёл даже для меня :D

yacc> Э не - ты ж с Бэйсика начал.

Я - именно с Бейсика :) А что? :D Но для меня программирование часто было самоцелью. Поэтому я на нём не остановился. А для многих - это был лишь вспомогательный инструмент. Который работал (и работает).

yacc> Ну... Фортран из той же песни. :)

Фортран был много раньше. Те, кто начинали с него, и кто не стал потом развиваться, уже, в основном, на пенсии :)

yacc> Для вычислений с плавающей точкой - и там и там эмулировать.

Но на 16/32 разрядах эмулировать много быстрее, чем на 8/16.

yacc> Для компиляции, Ром, нужна память. :)

Ну да. И что? :) Даже на БК-0010 умудрялись использовать компилирующий Бейсик. Правда, в итоге максимальный размер программы составлял только 10кбайт. Так что у пользователя был выбор - или 10кбайт на Бейсике в 10 раз быстрее, или 16кбайт на Фокале, но в 10 раз медленее :)

yacc> И вот эта фраза "Portable Python is beta software and it will probably always be beta software." меня, как не шибко опытного, не радует :)

А QB45 в portable варианте тоже не позиционировался. Никаких гарантий :)

yacc> Как я понимаю твоим знакомым надо чтобы был некий магический exe-файл, который достаточно запустить чтобы быть счастливым.

Пожалуйста - http://www.python.org/ftp/python/2.7/python-2.7.msi. Запустил - и счастлив :D

yacc> Странно. Обычно преподавали фортран :)

Мало ли, что было обычно. В 1990-м Фортран уже морально устарел. И в институтах массово преподавали Basic. Где-то с 1992-го перешли на Паскаль. А Фортран мы изучали уже на 4-м, кажется, курсе, когда за СМ-4 сели :)

yacc> Win32 :)

Там уже QBasic'то скоро работать не будет... Или уже не работает. Что там в Seven с эмуляцией DOS? :)
 3.6.123.6.12

yacc

старожил
★★☆
Balancer> На этапе исполнения и x86-код сегодня интерпретируется :)
Ты не забывай, что там вовсе не ЯП высокого уровня.

Balancer> Спасибо, не нужно. Он тяжёл даже для меня :D
Он легкий до безобразия. Выч программу мне на нем написать - проблем нет.

Balancer> А для многих - это был лишь вспомогательный инструмент. Который работал (и работает).
И аналогичный по легкости инструмент они хотят получить и сейчас.
Чтобы простой.

Balancer> Но на 16/32 разрядах эмулировать много быстрее, чем на 8/16.
Где 32 на XT? :) Адресация? А far и near указатели еще помнишь? :)

Balancer> Ну да. И что? :) Даже на БК-0010 умудрялись использовать компилирующий Бейсик. Правда, в итоге максимальный размер программы составлял только 10кбайт.
И на синклере был компилирующий бейсик. Только пользоваться им было неудобно по сравнению со встроенным. А неудобное будут использовать гораздо реже.

Balancer> А QB45 в portable варианте тоже не позиционировался. Никаких гарантий :)
Тем не менее его в таком варианте зачастую таскали - методика была отработана. И Борландовский Паскаль, кстати, тоже :) Тем, кто уже руки насобачил, для этого проблем нет.

Balancer> Пожалуйста - http://www.python.org/ftp/python/2.7/python-2.7.msi. Запустил - и счастлив :D
С таким же успехом это можно сказать про любой инсталлятор :)

Balancer> Мало ли, что было обычно. В 1990-м Фортран уже морально устарел. И в институтах массово преподавали Basic.
Э не - не обобщай. :) Для возможности быстро посчитать не шибко заморачиваясь с синтаксисом, он не устарел и сейчас. Особенно если нужны мат. библиотеки.

Balancer>Где-то с 1992-го перешли на Паскаль. А Фортран мы изучали уже на 4-м, кажется, курсе, когда за СМ-4 сели :)
Не знаю, не знаю. В СПбГУ преподавали фортран и на мой выпуск ( 97 год ). По причине его простоты.

Balancer> Там уже QBasic'то скоро работать не будет... Или уже не работает. Что там в Seven с эмуляцией DOS? :)
Так XP еще во всю ходит. :) Мы же здесь на за всех пользователей говорим, а только за нескольких, которые с трудом с QB-то слезают... :) И им дюже трудно даже GNUPlot запустить...
 3.5.93.5.9

Balancer

администратор
★★★★★
yacc> Ты не забывай, что там вовсе не ЯП высокого уровня.

Так и в байткоде - тоже не ЯП :) Можешь ещё вспомнить байткод Java или MSIL :) В общем, повторюсь, на эту тему спорили уже много :D Если хочешь, чтобы не цеплялись, то говори про реализации языка с компилятором в байткод, интерпретируемый потом виртуальной машиной. Таких - да, сегодня много. И то, интерпретация байткода может в любой момент превратиться в JIT (как это стало с Java или Lua) или сам байткод может вдруг оказаться нативным для иной архитектуры (например, в случае Java-процессоров), так что тут ещё и платформу всегда нужно уточнять.

Кстати, даже по виртуальной машине Питон нельзя в общем случае назвать интерпретатором. Есть Psyco, есть PyPy... Можно говорить только о конкретном дефолтовом CPython.

yacc> Он легкий до безобразия. Выч программу мне на нем написать - проблем нет.

Ты на нём что-то сложнее, чем "Hello world" писал? :D Боюсь, что нет :) Да, "Hello world" на нём... Ну, не сказать, что сильно прост, но несложен. Хотя новичка сильно загрузят отступы и форматированная печать. А вот стоит копнуть чуть глубже, начинаются кранты :) Начиная от идиотского синтаксиса, кончая идиотскими ограничениями на имена.

yacc> И аналогичный по легкости инструмент они хотят получить и сейчас.

Вот. Потому и Python :)

yacc> Где 32 на XT?

Там же, где 16 на 8080 :) AX:DX

yacc> И на синклере был компилирующий бейсик. Только пользоваться им было неудобно по сравнению со встроенным.

Естественно. Он же не в ПЗУ был прошит, а жрал под себя память :) На БК-шке было лучше, там и то, и другое в ПЗУ было.

yacc> Тем не менее его в таком варианте зачастую таскали - методика была отработана.

И тут кому понадобится - сделают. Но в том-то и дело, что не понадобится. Люди используют это для себя. Таскать они будут уже готовые результаты, «свёрстанные» в Excel и PowerPoint :)

yacc> С таким же успехом это можно сказать про любой инсталлятор :)

Так про портабельность не я заговорил :)

yacc> Для возможности быстро посчитать не шибко заморачиваясь с синтаксисом, он не устарел и сейчас.

Устарел, устарел. Когда пишешь на Фортране ты не о задаче думаешь, а об ограничениях языка.

yacc> Особенно если нужны мат. библиотеки.

Они давно доступны и из Си/Си++, и из Питона. Я же давал выше ссылки :)

yacc> Не знаю, не знаю. В СПбГУ преподавали фортран и на мой выпуск ( 97 год ). По причине его простоты.

Скорее по причине зашоренности преподавателей :)

yacc> Так XP еще во всю ходит. :)

Так я за будущее :)

yacc> Мы же здесь на за всех пользователей говорим, а только за нескольких, которые с трудом с QB-то слезают... :) И им дюже трудно даже GNUPlot запустить...

Запустить GNUPlot не трудно. Но это совсем другой инструмент. По своему принципу другой. Это не язык программирования, а развитое средство визуализации. С тонной ограничений и отвратительной документацией. Из-за документации (в том числе) - с достаточно высоким уровне вхождения. Я его, например, не с первой попытки освоил. А некоторые нужные вещи, так и вообще не понял, как сделать.

О том, насколько разные вещи Python и GNUPlot говорит хотя бы наличие GNUPlot-библиотек под Питон ;)
 3.6.123.6.12

yacc

старожил
★★☆
Balancer> Так и в байткоде - тоже не ЯП :)
Скрипт перла - не байт-код. И он свои результаты в виде .pyc-файла ( или .class ) не сохраняет.

Balancer> Можно говорить только о конкретном дефолтовом CPython.
Дефолтовый ActivePython так не делает. Это ты и сам знаешь.

Balancer> Ты на нём что-то сложнее, чем "Hello world" писал? :D
Фурье-преобразование и подсчет цифровых фильтров подойдет? :) Или гоняние звездочки в квадрате на псеводографике с учетом кодов управления Фрязинского дисплея на ДВК-2.

Balancer>Хотя новичка сильно загрузят отступы и форматированная печать.
Один раз учишься не переводить каретку под своим контролем - этого достаточно.

Balancer>Начиная от идиотского синтаксиса, кончая идиотскими ограничениями на имена.
В выч. программах катит легко - ни один язык программирования греческий язык не поддерживает :)

Balancer> Вот. Потому и Python :)
Вот потому и MathCad или подобное :)

Balancer> Там же, где 16 на 8080 :) AX:DX
Рома, сказки не рассказывай - это AX ( аккумулятор ) - 16 битный регистр, DX- тоже, но пару они не составляли для 32 бит. Вспомни регистры Z80 - это очень неплохой процессор был. Тебе напомнить? - Z80 - Викизнание

Balancer> Естественно. Он же не в ПЗУ был прошит, а жрал под себя память :) На БК-шке было лучше, там и то, и другое в ПЗУ было.
На синклере благодоря русским умельцам (а импортных у нас толком и не было) можно было сделать копию в ОЗУ, если помнишь :)

Balancer> И тут кому понадобится - сделают.
Не Ром - ТЫ сделаешь :) Чтобы им было удобно. Упертые люди именно такие :)

Balancer> Люди используют это для себя. Таскать они будут уже готовые результаты, «свёрстанные» в Excel и PowerPoint :)
Ты упомянул Excel??? Тогда мне вдвойне непонятна собственная графика под QB...

Balancer> Так про портабельность не я заговорил :)
Не ты. Не раз на мою машину попадал паскаль в свое время именно копированием . Почему я именно и говорю - что не через setup.

Balancer> Устарел, устарел. Когда пишешь на Фортране ты не о задаче думаешь, а об ограничениях языка.
Именно о ней и думаешь, а не об всяких ньюансах UI, исключениях и прочей фигне, лишней для рассчетов.

Balancer> Они давно доступны и из Си/Си++, и из Питона. Я же давал выше ссылки :)
Гораздо раньше они уже были для фортнана.

Balancer> Скорее по причине зашоренности преподавателей :)
Неа - они давали алгоритмы на языке, которого достаточно , чтобы их выполнить.

Balancer> Так я за будущее :)
А вот твои знакомые - похоже что нет, коль пользуются таким... :)
Будущее ( а точнее - давно уже настоящие ) для расчетов - тот же MathCad. А вовсе не Питон.

Balancer> Это не язык программирования, а развитое средство визуализации.
Именно.
Balancer>С тонной ограничений и отвратительной документацией.
Ты хочешь сказать, что твои знакомые на бейсике пишут навороченные библиотеки 3D графики, с возможностью оперативно управлять тем же самым приближением/удалением? Или хотя бы 2D графика, с возможностью погулять по осям, автоматически масштабироваться, увеличить/уменьшить, подписать, показать несколько графиков одновременно?
Я удивлен :)

Balancer>Из-за документации (в том числе) - с достаточно высоким уровне вхождения.
Что там у нас с русским детальным вариантом перевода GASP ? :)

Balancer> Я его, например, не с первой попытки освоил.
Похоже, ты больше сам программировал графику, чем пользовался сторонними прогами. :) У меня даже в лохматые времена с ним проблем не было - не будет и сейчас - я просто знаю что хочу от графика и возился с ними не только под grapher или GNUPlot - но и под Maple.

Balancer> О том, насколько разные вещи Python и GNUPlot говорит хотя бы наличие GNUPlot-библиотек под Питон ;)
Это ни о чем не говорит - рисовалке графиков достаточно понимать формат CSV. А в вычислительной программе - достаточно уметь его писать - хоть на бейсике, хоть на фортране.
 3.5.93.5.9

yacc

старожил
★★☆
P.S. Чтобы не придирался - все вышеописанное - ИМХО.
Равно как мое заключительное: ИМХО - ученому надо работать с программами типа MathCad, а не языками программирования с примитивной графикой баловаться.
И визуализацию делать посредством средств уже давно для этого сделанных - хотя бы тех же электронных таблиц.
При установленном Excel средствами Python-win32-Com, кстати, это тоже не сложно и ты тоже это знаешь.

P.P.S. Я не против Питона ( бо сам им активно последнее время пользуюсь ), но против его агитации для тех, и в тех вариантах, где он не нужен :)
 3.5.93.5.9
Это сообщение редактировалось 06.11.2010 в 04:42

NewPilot

опытный

yacc> Равно как мое заключительное: ИМХО - ученому надо работать с программами типа MathCad, а не языками программирования с примитивной графикой баловаться.

MathCad конечно штука удобная, но до определенных пределов. Когда возникает задача расчетов с большим объемом данных, он начинает заметно проигрывать тем же Сям. Допустим если численные расчеты по большим сеткам делаешь. Сам когда-то считал нелинейные волновые уравнения. Сетки порядка сотни и более элементов по каждому измерению (координате). Запускаешь считать и можешь на несколько часов идти гулять. А если надо в ограниченный срок и для разных наборов параметров повторить?.. Тут-то *опа и начинается. Все проклянешь, а особенно, что не выучил те же Си, чтоб все это быстрее делалось.
Хотя у нас все плотно на Маткаде сидят. Уже который год пытаемся студентов хотя бы на Scilab переучить, нифига не получается. Поскольку все потенциальные научруки все равно на том же Маткаде работают. Попробуй заставь какого-нибудь профессора переучить-ся на Scilab... про Си вообще молчу.
Афтомат жжот! (с)Лукьяненко. Последний дозор.  3.6.123.6.12

yacc

старожил
★★☆
NewPilot> MathCad конечно штука удобная, но до определенных пределов. Когда возникает задача расчетов с большим объемом данных, он начинает заметно проигрывать тем же Сям.
Один вопрос - вы графику где смотрите - средствами самого Си?
 3.5.93.5.9

Mishka

модератор
★★★

Balancer>> Но это и другой уровень программирования. А на шкале производительности Паскаль — Бейсик, Питон находится гораздо ближе к Паскалю :)
yacc> Но тем не менее - не паскаль.

Как не Паскаль? Для рисования кружочков разницы нет — там не компилятор, а интерпретация в чистом виде. По научным расчётам с числами, выходящими за пределы разрядной сетки проца — Паскаль преимуществ совсем не имеет. Даже наоборот. :P Нет в Паскале такой арифметики.
 3.6.113.6.11

Mishka

модератор
★★★

yacc> Паскаль тоже несложный. Но если хочется простоты - Фортран.

Гы. А о каком Фортране идёт речь? И почему FORTRAN не сложный? Ты, наверное, не знаешь, зачем там COMMON BLOCK-и существовали (и существуют). А заодно не знаешь проблемы про передачу параметров по ссылке и отсутствия защиты параметра от присваивания... :) Вы хотите проблемок в FORTAN-е? Их есть у меня. :F
 3.6.113.6.11

Balancer

администратор
★★★★★
yacc> Скрипт перла - не байт-код. И он свои результаты в виде .pyc-файла ( или .class ) не сохраняет.

1. А кто говорит о сохранении? Если у меня Java-пускалка будет компилировать Java-класс в память и там исполнять - Java перестанет быть компилятором? :)

2. Python чаще работает без сохранения .pyc, а Perl или PHP могут сохранять байткод. На Авиабазе, например, байткод скриптов сохраняется, за счёт чего достигается почти пятикратное ускорение (экономия на компиляции при каждом запуске) :)

Balancer>> Можно говорить только о конкретном дефолтовом CPython.
yacc> Дефолтовый ActivePython так не делает.

Вот потому я и говорю, что можно говорить только о конкретных реализациях и конкретных условиях запуска :)

yacc> Фурье-преобразование и подсчет цифровых фильтров подойдет? :)

В виде одной большой портянки, наверное? :) Как на счёт ограничения идентификаторов в 6 символов, три из которых уходит на идентификатор библиотеки? ;)

yacc> Один раз учишься не переводить каретку под своим контролем - этого достаточно.

Тебе - да. У нас на факультете, ориентированном на компьютеры, большая часть народа на Фортране просто умом трогалась. А что прикажешь делать тем, кому программирование - даже не околопрофилирующий предмет? :)

yacc> В выч. программах катит легко - ни один язык программирования греческий язык не поддерживает :)

Это ты к чему, не понял? (Тем более, что, как раз, масса языков позволяет писать хоть на греческом, хоть на китайском ;))

yacc> Вот потому и MathCad или подобное :)

Я по этому поводу выше уже писал, повторяться не буду.

Balancer>> Там же, где 16 на 8080 :) AX:DX
yacc> Рома, сказки не рассказывай - это AX ( аккумулятор ) - 16 битный регистр, DX- тоже, но пару они не составляли для 32 бит

Посмотри на [I]MUL, [I]DIV, CWD.

yacc> Вспомни регистры Z80 - это очень неплохой процессор был.

Да я помню, как бы :) Это ты 8086 вспомни :) Он был намного производительнее на вычислительных задачах в пересчёте на мегагерц тактовой.

yacc> На синклере благодоря русским умельцам (а импортных у нас толком и не было) можно было сделать копию в ОЗУ, если помнишь :)

Угу. Только компилирующего Бейсика в этом ОЗУ не было :)

yacc> Ты упомянул Excel???

Не я. В теме выше было.

yacc> Не ты. Не раз на мою машину попадал паскаль в свое время именно копированием .

Ко мне на машину и Windows 3.1 впервые попал копированием. Но при чём тут это? :)

yacc> Именно о ней и думаешь, а не об всяких ньюансах UI

Уф... Начинай сначала. Первое сообщение именно в этом контексте и идёт.

yacc> Гораздо раньше они уже были для фортнана.

Но сегодня - это сегодня. А не «намного раньше» :)

Balancer>> Скорее по причине зашоренности преподавателей :)
yacc> Неа - они давали алгоритмы на языке, которого достаточно , чтобы их выполнить.

Офигеть. Да любой современный алгоритм можно хоть в машинных кодах выполнить!

yacc> А вот твои знакомые - похоже что нет, коль пользуются таким... :)

Так это уже их трудности :)

yacc> Будущее ( а точнее - давно уже настоящие ) для расчетов - тот же MathCad. А вовсе не Питон.

Понятно. Сообщений моих не читаешь, по ссылкам - не ходишь :)

yacc> Ты хочешь сказать, что твои знакомые на бейсике пишут навороченные библиотеки 3D графики

Блин. Ты читать будешь что тебе пишут? А то со своими фантазиями сам общаться будешь. Где я писал про наворочаную 3D-графику?

yacc> Я удивлен :)

Я тоже.

yacc> Что там у нас с русским детальным вариантом перевода GASP ? :)

А вот язык, как раз, для этих людей не проблема :D Тем более, что адекватной документации по GNUPlot на русском всё равно нет.

yacc> Похоже, ты больше сам программировал графику, чем пользовался сторонними прогами. :)

Лет 20 назад - да, было так. В последние лет 10 - нет.

yacc> У меня даже в лохматые времена с ним проблем не было - не будет и сейчас

Хорошо. Скажи, как в GNUPlot, например, задавать цвет окружности, который бы менялся в зависимости от значения параметра-радиуса?

yacc> Это ни о чем не говорит - рисовалке графиков достаточно понимать формат CSV

Ты даже не представляешь, о чём идёт речь :) Впрочем, продолжим эту подветку после твоего ответа на вопрос о цвете окружности. Ещё добавь туда же угол наклона шрифта и его смещение в зависимости от количества точек исходных данных на одну точку графика. Чтобы при совпадении точек сопровождающий их текст не перекрывался.
 3.6.123.6.12

Balancer

администратор
★★★★★
yacc> ИМХО - ученому надо работать с программами типа MathCad

Согласен. Если встаёт вопрос выбора чему учить. А вот если выбор между уже изученным и практикуемым 15 лет qbasic и неизученным mathcad с другой идеологией, то ответ диктуется уже реальной практикой. Это учёный, а не программист. Инструмент работает - максимум, на что можно учёного сподвигнуть, это на использование подобного инструмента, но более удобного. А не на принципиально новое. Но об этом я выше тоже уже писал.

yacc> И визуализацию делать посредством средств уже давно для этого сделанных - хотя бы тех же электронных таблиц.

А это даже не смешно. Даже с примитивными задачами моей жены Excel в плане визуализации не справляется. Нет там таких функций :) Ей для визуализации какой-то статистический софт использовать приходится.

yacc> но против его агитации для тех, и в тех вариантах, где он не нужен :)

А тут Питон и не агитируется для всех :) Он предложен для конкретной узкой ниши, куда он весьма хорошо вписывается.
 3.6.123.6.12

yacc

старожил
★★☆
Balancer> 1. А кто говорит о сохранении?
Зачем делать это каждый раз при запуске, если нужна производительность?

Balancer> 2. Python чаще работает без сохранения .pyc
ActivePython, которым я пользуюсь, так не думает :)

Balancer> Вот потому я и говорю, что можно говорить только о конкретных реализациях и конкретных условиях запуска :)
ActivePython - очень удобный для Win сред. QB же человек скорее всего не под линух запускает? :)

Balancer> В виде одной большой портянки, наверное? :) Как на счёт ограничения идентификаторов в 6 символов, три из которых уходит на идентификатор библиотеки? ;)
Ты в каком году поступал? Я работал с F77 и F90. Во втором этих ограничений нет.

Balancer> Тебе - да. У нас на факультете, ориентированном на компьютеры, большая часть народа на Фортране просто умом трогалась.
У нас трогались только те, кто хотел программу юзабельной сделать - там фортран ограничивает. Кто считал так в меньшей степени думал.
Balancer>А что прикажешь делать тем, кому программирование - даже не околопрофилирующий предмет? :)
Использовать мат. пакеты.

Balancer> Это ты к чему, не понял? (Тем более, что, как раз, масса языков позволяет писать хоть на греческом, хоть на китайском ;))
Покажи мне языки программирования общего назначения, где переменная в тексте программы греческими буквами обозначаются :) ( спец проги типа MathCad разумеется не в счет )

yacc>> Рома, сказки не рассказывай - это AX ( аккумулятор ) - 16 битный регистр, DX- тоже, но пару они не составляли для 32 бит
Balancer> Посмотри на [I]MUL, [I]DIV, CWD.
Глянь сюда http://home.comcast.net/~fbui/intel_i.html и ткни мне пальцев применительно к IMUL и 808x на reg32 или mem32, а то я что-то не вижу :)

Balancer> Да я помню, как бы :) Это ты 8086 вспомни :) Он был намного производительнее на вычислительных задачах в пересчёте на мегагерц тактовой.
Да не сказал бы я :)

yacc>> Ты упомянул Excel???
Balancer> Не я. В теме выше было.
Твоя фраза - "Balancer> Люди используют это для себя. Таскать они будут уже готовые результаты, «свёрстанные» в Excel и PowerPoint :)"

Balancer> Ко мне на машину и Windows 3.1 впервые попал копированием. Но при чём тут это? :)
К тому, что это одно из преимуществ того же QB. Графика там идет сразу.

Balancer> Уф... Начинай сначала. Первое сообщение именно в этом контексте и идёт.
Вычисленное - это цифры. Потом превращай в то, что хочешь и как хочешь.

Balancer> Но сегодня - это сегодня. А не «намного раньше» :)
И сегодня он продолжает жить :) И библиотеки к нему. Именно вычислительных к нему больше, чем к Питону.

Balancer> Офигеть. Да любой современный алгоритм можно хоть в машинных кодах выполнить!
Только лучше записывать это на ЯП высокого уровня. Особенно если дело касается вычисления с числами с плавающей точкой и матрицами.

Balancer> Так это уже их трудности :)
Согласен :)

Balancer> Понятно. Сообщений моих не читаешь, по ссылкам - не ходишь :)
Это в смысле твоих ссылок на Tiobe ? :)

yacc>> Ты хочешь сказать, что твои знакомые на бейсике пишут навороченные библиотеки 3D графики
Balancer> Блин. Ты читать будешь что тебе пишут? А то со своими фантазиями сам общаться будешь. Где я писал про наворочаную 3D-графику?
Элементарный график посмотреть на GNUPlot - гораздо легче, чем строить самому координатные оси, подписывать, рисовать сетку, давать возможность zoom-а и т.п., что самому писать совершенно необязательно.

Balancer> А вот язык, как раз, для этих людей не проблема :D Тем более, что адекватной документации по GNUPlot на русском всё равно нет.
GNUPlot - Это один пример. Я, например, графики строил и в Maple. Есть куча других программ, чтобы не делать это руками.

Balancer> Хорошо. Скажи, как в GNUPlot, например, задавать цвет окружности, который бы менялся в зависимости от значения параметра-радиуса?
Покажи картинку где это нужно - не понял.

Balancer> Ещё добавь туда же угол наклона шрифта и его смещение в зависимости от количества точек исходных данных на одну точку графика. Чтобы при совпадении точек сопровождающий их текст не перекрывался.
Чет не понял - что и оформительские задачи программировать? :)
А что в GASP-е с наклонным рисованием шрифтов? :)
 3.5.93.5.9

yacc

старожил
★★☆
Balancer> А это даже не смешно. Даже с примитивными задачами моей жены Excel в плане визуализации не справляется.
Я же написал - "хотя бы".
Это минимум означает одно - не программировать это самому руками на ЯП общего назначения.
 3.5.93.5.9

yacc

старожил
★★☆
Mishka> Как не Паскаль? Для рисования кружочков разницы нет — там не компилятор, а интерпретация в чистом виде.
Сначала надо вычислить.

Mishka> По научным расчётам с числами, выходящими за пределы разрядной сетки проца — Паскаль преимуществ совсем не имеет. Даже наоборот. :P Нет в Паскале такой арифметики.
Нет. Но Паскаль в мои времена ( Борландовский разумеется ) имел преимущества в легкости написания unit-ов т.е. библиотек и имел среду отладки, чем выгодно отличался от фортрана. В библиотеке ты можешь сделать работу со своими типам данных как захочешь.
 3.5.93.5.9
Это сообщение редактировалось 06.11.2010 в 16:12

yacc

старожил
★★☆
Mishka> Гы. А о каком Фортране идёт речь? И почему FORTRAN не сложный?
А чем он сложный? :)
Я работал с Ф77 и Ф90, с Ф4 - совсем мало, еще на СМ-ках и ДВКшках.

Mishka>Ты, наверное, не знаешь, зачем там COMMON BLOCK-и существовали (и существуют).
Своеобразный аналог структуры. Я им пользовался мало.

Mishka>А заодно не знаешь проблемы про передачу параметров по ссылке и отсутствия защиты параметра от присваивания... :)
В Питоне меня отсутствие этой защиты иногда раздражает. Там это тоже есть :)

Mishka>Вы хотите проблемок в FORTAN-е? Их есть у меня. :F
В каждом языке - свои тараканы :)
 3.5.93.5.9
1 2 3 4 5

в начало страницы | новое
 
Поиск
Поддержка
Поддержи форум!
ЯндексЯндекс. ДеньгиХочу такую же кнопку
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru