Linux за българи: Форуми

Програмиране => Общ форум => Темата е започната от: villimon в May 28, 2016, 21:59



Титла: FORTRAN
Публикувано от: villimon в May 28, 2016, 21:59
Здравейте,

Не съм правил голямо търсене в google за fortran, тепърва започвам. Знам, че се използва за сложни изчисления. Надявам се да намеря хора, които са на ясно с fortran и имат желание да ми помогнат със запознаването и навлизането в него.

Ако се намерят ентусиасти, пишете ми на лично, за да се свържем. :) Ако ви е по удобно може и в тази тема.


Титла: Re: FORTRAN
Публикувано от: Naka в May 29, 2016, 10:54
Ако искаш да правиш 'сложни изчисления' - octave. това е математически шел същият като matlab. Нямам си и понятие от Фортран, но като чета, много често ги споменават заедно - Фортран/octave/matlab.


Титла: Re: FORTRAN
Публикувано от: villimon в May 29, 2016, 14:55
Благодаря ще разгледам Octava. Matlab съм ползвал но не знам дали мога да направя библиотека с него за интегриране в друга среда извън matlab?


Титла: Re: FORTRAN
Публикувано от: vektorman в May 30, 2016, 09:40
Виж и това - http://www.scipy.org/ не знам дали няма да ти свърши работа.


Титла: Re: FORTRAN
Публикувано от: 4096bits в May 30, 2016, 15:49
Колко сложни изчисления? Всеки порграмен език може да го накараш да направи колкото искаш сложно изчисление. Ако искаш бързина - С, С++. Ако искаш да ти е по-лесно - Python MPMATH ($2), GMPY2 ($2), която е С библиотека за Python и се справя доста добре. Можеш да видиш също и Python NumPy ($2)
Също така този език ти позволява произволна прецизност при изчисленията. Пробвал съм, смахнато е  ;D


Титла: Re: FORTRAN
Публикувано от: rcbandit2 в May 30, 2016, 16:13
Само за обща култура да попитам тестове с Java за математически изчисления правили ли сте? Как е с производителността?


Титла: Re: FORTRAN
Публикувано от: Naka в May 30, 2016, 16:35
Всичко ли е Питонясало? каква е тази мода? Може да е много хубав език ама името му не е. Отврът ми е само като си помисля да си имам работа със змии и големи смоци.




Титла: Re: FORTRAN
Публикувано от: runtime в May 30, 2016, 17:42
Само за обща култура да попитам тестове с Java за математически изчисления правили ли сте? Как е с производителността?

Не мисля, че ще има някакви драми с производителността.


Цитат
Всичко ли е Питонясало? каква е тази мода? Може да е много хубав език ама името му не е. Отврът ми е само като си помисля да си имам работа със змии и големи смоци.

Извинявай ама това ми звучи като да идеш в магазина и да си харесаш лаптоп според цвета. Не, че не съм го правил и това, ама някои неща в живота са по-силни от интуицията ти - демек жената.
Инак Python си е доста наложен език, но не и в България. :)  [_]3


Титла: Re: FORTRAN
Публикувано от: villimon в May 30, 2016, 22:05
В процеса на търсене попаднах на тази статия може да ви е интересна

https://modelingguru.nasa.gov/docs/DOC-1762

по принцип знам, че Fortran е специализиран език за изчисления докато Python и JAVA са езици с общ характер. Гледам че NumPy се справя изключително добре. Това са част от причините да съм се спрял на Fortran въпреки, че всичко е за забавление :)


Титла: Re: FORTRAN
Публикувано от: Naka в May 31, 2016, 10:19
Извинявай ама това ми звучи като да идеш в магазина и да си харесаш лаптоп според цвета.

Ами аз така избирам. Всичко трябва да е хубаво и външният вид и вътре.
Ако ли пък нещо е грозно направено (името) това значи, че въобще не са се постарали и изобщо не ги е еня. >:( Къде е гаранцията че след като нещо не е направено/проектирано хубаво и другото няма да е такова?

---

Относно мат софтуера на мен octave ми върши работа особено за DSP. Обаче върши работа до толкова до колкото да се изтества някоя теория/алгоритъм и да се визуализира. Eдин вид Proof of concept. Обаче ако това трябва да се направи на програма - незнам как.

Единият начин е след като имаме работеща математика това да се програмира на C със съответните аналогични(DSP) библиотеки.

Много би ми се искало например код на octave да може да се компилира къмто изпълним -да ама не. Май при matlab има такава възможност (или скайлаб). Много би ми се искало и octave/matlab да имат възможност и за real time processing - де да знам може и да може.

Едно време, още под дос, бях правил програма на Паскал за интегриране на система от дифернциални уравнения с Рунге-Кута 45 - и много хубаво ги смяташе. ;D Обаче за това бях взел идеята от подобни програми писани на FORTRAN  :o
Ако FORTRAN обаче може да се компилира до изпълним код и с него да се прави real time - защо пък не. Може да се окаже много по лесно отколкото да се програмира на C с всичките му идиотщини от рода на маке .configure и т.н.


Титла: Re: FORTRAN
Публикувано от: remotexx в May 31, 2016, 21:42
..моите 5 ст.

 - най-близо до математиката е езика АЛГОЛ (а не Фортран) но ще ти трябва специална кавиатура за него  ;D
 - най-близо до хардуера е С/С++ (има си математически и графични библиотеки естествено)
 - най-бърза разработка става с някаква среда МатЛаб, Октава-та и пр.
та всяко нещо си има предимства и недостатъци... само че Фортрана е някъде посредата (не казвам, че е посредствен)

..та не разбрах за какво ще го ползвате, защото за някой по-специфични цели ма пък едни други езици от сорта на Лисп, Пролог и т.н. и там има математика ..то в днешно време къде ли няма (биология, химия, физика и т.н.)


Титла: Re: FORTRAN
Публикувано от: 4096bits в Jun 01, 2016, 13:37
Извинявай ама това ми звучи като да идеш в магазина и да си харесаш лаптоп според цвета.

Ами аз така избирам. Всичко трябва да е хубаво и външният вид и вътре.
Ако ли пък нещо е грозно направено (името) това значи, че въобще не са се постарали и изобщо не ги е еня. >:( Къде е гаранцията че след като нещо не е направено/проектирано хубаво и другото няма да е такова?


Нека да има малко уважение към човека, дето е разработил първоначално езика. Програмния език е кръстен на прочутата скеч група Монти Пайтън като почит към  тях.
И не е мода. Учи се бързо, работи се бързо с него. Затова е толкова популарен. Защото много бързо може да си нахвърляш програмата и концепцията дето ти е в главата, да го видиш, как става и после го пиши на какъвто искаш друг език. Amazon e върху Django, който е върхо Python. Компания с почти половин трилион долара годишен оборот.
Нали и аз се бях хванал с една доста сложна задачка с много математика и на 90% програмката беше готова. Остана тежката част, но там си трябва математик и то мн. добър, за да стане както трябва. Иначе ламерския начин го измислих, ама е смотано, та чак смешно.
Тези 90% от програмата ги написах за 1 ден и това ми беше втория опит да направя нещо с Python

Но пак ще кажа, зависи каква е крайната цел. То затова и има толкова богат избор

П.П. Офтопик, но сега се тих
Има едно нещо наречено xonsh, което представлява wrapper около bash написано на Python. Това взима написаната команда в терминала и, ако е команда за терминала си я пуска през subproces мисля, че беше и връща изхода, такъв, какъвто го очакваме. Но и позволява директно писане в терминала на Python-ски код, все едно сме пуснали интерпретатора. Другото, което се позволява в този "шел" е, че командите могат да приемат за аргумент Python-ки променливи, връщания от функции. И обратното - изхода от bash командите могат да се предават на функции на Python. Струва си да си поиграе човек с това. Даже мисля да  си направя Guake да ми пуска tmux, да цепи терминала на две и в единия постоянно да е стартирано.


Титла: Re: FORTRAN
Публикувано от: villimon в Jun 01, 2016, 21:45
..та не разбрах за какво ще го ползвате

По принцип ще го ползвам за забавление целта ми е да направя някаква математическа симулация на физически проблем като например влиянието на външни въздействия върху червеева дупка. И това нещо да го вкарам в JAVA, Python или нещо друго с което други неща стават по лесно. Гледам, че NASA го ползват предполагам, че не е толкова зле. Не знам как тълкувате резултатите от линка който постна по рано. https://modelingguru.nasa.gov/docs/DOC-1762


Титла: Re: FORTRAN
Публикувано от: 4096bits в Jun 01, 2016, 22:59
http://www.scipy.org/

От NASA го ползват, защото когато е създавана тази организация, тогава това е бил езика, на който са се правели нещата. Това е основен проблем на страшно много големи компании и държавни структури. Софтуера писан за тях е писан на езици, дето сега се изучават от малко хора. Проблема при по-старите езици е, че за тях се пишат малко библиотеки и развитието им, ако изобщо има такова е много бавно, поради човешкия фактор. Остарели концепции, остарели структури на данни, остарели методи. И всичкото фирмено и държавно софтуер е било доста скъпо, много милиони редове код и портването на някакъв съвременен език, също би било също толкова трудно и скъпо, колкото е било и тогава. Затова NASA продължават да го ползват. Това е според мен де. Ако някой има друго виждане, да сподели.

Щях да забравя. Gmpy2 e чудесна библиотека също. Всъщност може би най-доброто за момента за чиста математика. Може би и mpmath


Титла: Re: FORTRAN
Публикувано от: villimon в Jun 02, 2016, 08:26
4096bits ще се съглася с теб, че SciPy изглежда най-близо до скоростта която предлага Fortran (защото до сега стигнах до извода, че колкото по далеч от желязото е абстракцията толкова по бавни са изчисленията). За историческата значимост на някои езици съм съгласен то това, че с тях не могат да се правят някакви "съвременни неща" (например мобилни приложения) не мисля, че ги прави лоши или не нужни.


Титла: Re: FORTRAN
Публикувано от: spec1a в Jun 02, 2016, 09:06
  Така и не успях да разбера от дискусията с какво точно FORTRAN
превъзхожда   С/С++   . По бързодействие ли,по удобства ли ..
  Ако говорим за Python,там едва ли може да става дума за бързодействие...
  Според мен,оптималният вариант за тежки математически изчисления е
С/С++ , като е добре на "критичните" места  да се използва и асемблер.
  Така се получава изпълним код (а не псевдо-код), който е оптимизиран
за съответната процесорна архитектура, съответно има и най-голямо
бързодействие.


Титла: Re: FORTRAN
Публикувано от: Naka в Jun 02, 2016, 11:39
Не знам как тълкувате резултатите от линка който постна по рано.
Цитат
NumPy and Matlab have comparable results whereas the Intel Fortran compiler displays the best performance.

Ами Matlab третира всичко като матрици или вектори(матрица с един ред). Нормално е след като това му е основата, точно това  C=AxB или всякакви други подобни операции за умножение на масиви от данни да са оптимизирани вътрешно от енжина. Затова дава такава производителност. а и примерите на Наса са все такива.

Обаче това което чета за octave не било така с производителността. сега дали е нарочно, защото octave е основният конкурент на Matlab или просто още не са го донаписили не знам. Но все пак octave 100% еквивалент на Matlab в синтаксиса.

Мисля, че много грешен подход, човек да се задълбава в производителноста и по това да избира средата. Все пак става дума за моделиране на нещо. Трбява да му е удобно. Ако пък след това трябва да се направи да работи бързо или в реалтайм винаги може да се намери начин.




Титла: Re: FORTRAN
Публикувано от: villimon в Jun 02, 2016, 12:10
  Така и не успях да разбера от дискусията с какво точно FORTRAN
превъзхожда   С/С++

Fortran е удобен при описване на алгоритмите и се доближава по бързодействие до c++.

Все пак става дума за моделиране на нещо. Трбява да му е удобно. Ако пък след това трябва да се направи да работи бързо или в реалтайм винаги може да се намери начин.

Съгласен! Но за да има спора решени за бързодействие е включване на нещо готово което прави нещата по бързо. :)

Благодаря за мненията жалко, че не се намери някои с опит във FORTRAN. Нямам бърза работа затова ще започна с него ако не се получи имам достатъчно варианти, които ми предложихте.


Титла: Re: FORTRAN
Публикувано от: 4096bits в Jun 02, 2016, 12:41
4096bits ще се съглася с теб, че SciPy изглежда най-близо до скоростта която предлага Fortran (защото до сега стигнах до извода, че колкото по далеч от желязото е абстракцията толкова по бавни са изчисленията). За историческата значимост на някои езици съм съгласен то това, че с тях не могат да се правят някакви "съвременни неща" (например мобилни приложения) не мисля, че ги прави лоши или не нужни.
Изчисленията са бързи. защото тези библиотеки са С библиотеки. Като напимер gmpy2 (gmpy2 is a C-coded Python extension module).
Преди да се захванеш с който и да език, първо разучи, какво има налично за него. Библиотеки, модули, наречи ги, както искаш. Тепърва да откриваш топлата вода, вместо да ползваш труда на другите не е опция. Времето е най-ценния ресурс.


Титла: Re: FORTRAN
Публикувано от: rcbandit2 в Jun 02, 2016, 13:25
Направо нов език си напиши да ти е максимално удобно за целите.


Титла: Re: FORTRAN
Публикувано от: growchie в Jun 02, 2016, 15:45
Не знам къде ги четете тези хвалебствия за FORTRAN-а, но в университета много го ползваха главно по инерция. Дисертацията си я направих на C и накрая колега я линкна в проекта който е писан на фортран. Четох го в началото като разучавах за какво иде реч но така и не видях някакво очевидно предимство освен стринговите променливи и точността на изчисленията. Няма обекти, старият код беше табулиран и се пишеше отвратително на него. Тестовете които си бях направил не даваха никакво предимство в скоростта на кода.


Титла: Re: FORTRAN
Публикувано от: growchie в Jun 02, 2016, 16:02
Fortran е удобен при описване на алгоритмите и се доближава по бързодействие до c++.
Кажи ми с какво Fortran е по-удобен за алгоритмизиране на математични процеси от С или който и да е друг език. Единственото нещо което е удобно е точността с които се извършват изчисленията и то само ако ги окажеш при дефинирането на променливите. Няма как да избягаш от това да си направиш сам анализ на проблема и да решиш на всеки етап каква точност да ползваш. Изчетох навремето маса код писан от колегите и няма нищо което да не може да се направи на който и да е друг език също толкова лесно. Вече компилатора колко качествен код ще произведе е отделен въпрос, но дълбоко се съмнявам, че съвременните с/с++ компилатори ще му отстъпват. Вярно че на времето работих със старата спецификация на езика, ама да е дръпнал нещо феноменално не ми се вярва.


Титла: Re: FORTRAN
Публикувано от: growchie в Jun 02, 2016, 16:19
Може да се окаже много по лесно отколкото да се програмира на C с всичките му идиотщини от рода на маке .configure и т.н.

Нямаш си и представа колко си далеч от истината  ;)


Титла: Re: FORTRAN
Публикувано от: Naka в Jun 02, 2016, 17:21
А тя е?  ???


Титла: Re: FORTRAN
Публикувано от: remotexx в Jun 02, 2016, 19:50
@spec1a Ако ще го разнася по други компютри (напр. да си го пуска и тества освен на работния и на преносимия) тогава JIT / hot-spot compiler ще е по-добре при първото пускане/извикване всеки модул ще се компилира по веднъж с всичките оптимизации за новата архитектура и готово и ще е по бързо от оптимизираното ама за друг процесор да не говорим ако работния е 64 бит а другия 32 (или 16  ;D)...

Според мен целта/въпроса се измести и вече става дума за подходяща библиотека коята да се ползва. Ако е за език най-голямо забавление е с АЛГОЛ - вервайте ми  ;) а ако отпадне изискването за навързване към друг код на друг/произволен език то най-добре е със среда (Матлаб, Октава - имат си оптимизирани за скорост, многонишкови и т.н. библиотеки вградени, но пък трудно се вгражда към/от друг код)

П.П.
Е да за математиката навремето се ползваше ФОРТРАН а за бизнеса КОБОЛ - и двата безнадеждно остарели вече... Наскоро един пенсионер го бяха грабнали военните от лодката в която си ловял риба след пенсия да си им дописва софтуера на Кобол (за много повече пари - и той се сългасил), а един "колега" тук от тези дето пишат софтуер за борсата (дето автоматично търгува) имаше статия (само дано успея да я изровя) в която казва че за техните цели (математически изчисления) не вижда голямо забавяне между Джава и С/С++ и затова не търсели вече толкова С/С++ разработчици ами повече Джавари - спестявало им време за разработка (е и пари)

http://compsci.ca/blog/if-a-programming-language-was-a-boat/

Не намерих оригиналната статия от преди години но пък намерих по-нови ;-)
http://www.optionscity.com/blog/java-vs-c-performance-face/
http://blog.cfelde.com/2010/06/c-vs-java-performance/

и то още от 1998 г. насам Джава е сравнима със С++ по скорост :-)
http://www.javaworld.com/article/2076593/performance-tests-show-java-as-fast-as-c--.html?page=2

JIT vs. Static Compiler
http://stackoverflow.com/questions/145110/c-performance-vs-java-c


Титла: Re: FORTRAN
Публикувано от: remotexx в Jun 02, 2016, 19:59
Пък ако са вече чаак ТОЛКОВА големи и бавни сметките направо го пиши разпределено - това пък е бъдещето ...и да прескочим/забравим за спора кое е по- по- най- към днешно време.
Мдааа разпределени изчисления... де на компютри де с хора (за някой неща хората все още са по-добри та надявам се няма да свършим ептен като в Матрицата, поне не скоро)

напр.

Computer:
SETI@home ($2)

VS. Human:
Eyewire ($2)
Stardust@home ($2)

П.П. Е-е-е-х и Фортран-а беше голяма работа - едно време
...и да цитирам по памет един колега - Голяма, голяма - колко да е голяма? - Колкото няколко по-малки.


Титла: Re: FORTRAN
Публикувано от: remotexx в Jun 02, 2016, 20:16
Малко ОТ: Инак от езиците (чистите езици) най-напред е С# (Java Оракъл я купиха само за да го убият ...и успяха)

С#, Roslyn - Код който сам пише компилира и изпълянва код - Скайнет, .. и ние хората май ставаме излишни с тоя кратък срок на амортизация и скъпи резервни части  >:D

Using Roslyn for Runtime Code Generation in Marten ($2)

 November 11, 2015

I’m using Roslyn to dynamically compile and load assemblies built at runtime from generated code in Marten and other than some concern over the warmup time, it’s been going very well so far.


Титла: Re: FORTRAN
Публикувано от: runtime в Jun 02, 2016, 21:08
Все си мисля, че ако ще се правят изчисления GPU-то ще се справи по-добре. Ама това нито идея си имам нито съм го тествал. Някой с повече мозък в областта може да се произнесе по-компетентно. Това малко ме съмнява да има библиотеки във фортран да се ползва графичен процесор за смятане... Ама знам ли де, твърде бос съм в тая сфера.

П.С. Ааа имало бе... CUDA FORTRAN :)  [_]3

Пак се изказах неподготвен  :P


Титла: Re: FORTRAN
Публикувано от: growchie в Jun 02, 2016, 21:11
А тя е?  ???
Извинявай ако е прозвучала като заяждане.
С проектите които се занимавах тия make файлове бяха бат файлове. Компилатора плюе обджект файлове, а след това линкера ги навръзва в екзето. Имаше реплики от типа "прати ми обджекта да си направя сборката" По-новите неща ползваха вижуъл студио 6 и там мейк системата оставаше скрита.
Като цяло компилираните езици са така. Компилатора обхожда поред сорсовете, след това линкера събира резултатите и прави проекта.
А конф няма общо с мейк. Configure е част от аутотуулс пакета който се оправя с пътищата, подготвя параметрите за проекта и генерира мейк файловете. Не е само до с/с++ а до компилирането на големи проекти като цяло. Може и за фортран проект да го ползваш.


Титла: Re: FORTRAN
Публикувано от: spec1a в Jun 02, 2016, 22:00
   @remotexx , какво точно разбираш под:
   "Инак от езиците (чистите езици) най-напред е С#"
    С# си е Java -подобен език, с подобни възможности ...
Едно от малкото  предимства на С# пред Java е  наличието на деструктори
(в Java няма деструктори,трябва да се разчита само на garbage collector -a )
но пък Java си има други предимства, и е по-популярен ...
   P.S.  малко вероятно е още да се използват 16-битови процесори ...
...освен от Хамериканските военни,наскоро изтекоха данни как в с-ми за
управление на междуконтинентални балистични ракети се използват
компютри от 70-те години (!), с 8 инчови флопита... Ужас  ;D


Титла: Re: FORTRAN
Публикувано от: Naka в Jun 02, 2016, 22:21
Не се изразих точно преди.  Имах в предвид аутомаке системата. Само не казвай че е лесна за вдяване и не е пълна каша.

А това го обсъждахме и се ебавахме преди
 http://www.linux-bg.org/forum/index.php?topic=45426.0

Сега да не вземем да почнем да спорим че има и други билд системи.


Титла: Re: FORTRAN
Публикувано от: growchie в Jun 02, 2016, 22:41
Не се изразих точно преди.  Имах в предвид аутомаке системата. Само не казвай че е лесна за вдяване и не е пълна каша.

А това го обсъждахме и се ебавахме преди
 http://www.linux-bg.org/forum/index.php?topic=45426.0

Сега да не вземем да почнем да спорим че има и други билд системи.

Трябва с опрян пищов в главата да ме накарат да ползвам аутотуулс за нови неща :) Не знам някой, който да не ги ненавижда. Не, просто останах с впечатлението, че смяташ че на фортран не се занимаваш с тези подробности около билдването на проект.
Но за легаси проести няма как, влачиш си аутотуулса.


Титла: Re: FORTRAN
Публикувано от: remotexx в Jun 03, 2016, 00:03
   @remotexx , какво точно разбираш под:
   "Инак от езиците (чистите езици) най-напред е С#"
    С# си е Java -подобен език, с подобни възможности ...
Едно от малкото  предимства на С# пред Java е  наличието на деструктори
(в Java няма деструктори,трябва да се разчита само на garbage collector -a )
но пък Java си има други предимства, и е по-популярен ...
   P.S.  малко вероятно е още да се използват 16-битови процесори ...
...освен от Хамериканските военни,наскоро изтекоха данни как в с-ми за
управление на междуконтинентални балистични ракети се използват
компютри от 70-те години (!), с 8 инчови флопита... Ужас  ;D

Ужас  - да, новите посмъртно няма да издържат 40-50 г. - така ги правят по дизайн т.нар. "планирано остаряване" ...за съжаление.

Малка поправка - може би вече не правилно да се говори само за "чист" език особено след като вече вкарват и комилатора вътре... и сега му викат платформа т.е. компилатора ти е почти част от езика - има си API което може да се вика run-time и да си правиш каквито си искаш извращения там. вкл. и - очаквайте скоро новите самомодифициращи се вируси от изходен код  ;D няма да гърмат като старат генерация на някой различни хардуери и/или ОС (по-стари версия на очакваната ОС) ами направо ще си се компилират на/за нея  [_]3

Имах предвид възможностите на езика ...май по-правилно е да се каже на средата. Малко предистория - отначало бяха компилаторите (първият явно е писан директно на машинен език  ::)), после 60-70-те (Бейсик) интерпретаторните, после пак завръщане към компилаторните и сега последната генерация C#/Java пак леко обръщане към интерпретаторни езици само че вече с JIT комилатори, вграден даже Рослин може от кода да го викнеш да компилира код (написан/генериран програмно от кода ти) и после и да го изпълниш т.е. само модифицираща се програма или ако искаш чисто генерирана от код и всичкото това по време на изпълнение това Джава го не може (нямам предвид reflеction от вече комилиран до п-код обект), а и след като се поскараха и осъдиха Оракъл и Гугъл и Гугъл спечели и особ. че вече няма да има приставка за Джава в Гугъл Хром а и Оракъл напоследък само оправят грешки и уволняват разработчици (напомня ми все повече на Сън преди да заминат) та не съм сигурен още колко ще изкара Джава (имам предвид с нововъведенията - инак без промени бая ще кара) та затова казах че най-напред е C# говоря само за езика - като сорост на развитие и нововъведения.

Особено сега когато отвориха кода и на компилатора (с API барабар) и на средата и вече няма да е само за 1 ОС C#/.Net
https://en.wikipedia.org/wiki/.NET_Compiler_Platform

Architecture

Traditionally compilers are a black box for developers. However, with increasing complexity and demands for source code analysis in modern integrated development environments, compilers need to expose application programming interfaces (APIs) that will help developers to directly perform phases of compilation such as lexical and syntactic structure analysis of source code. Roslyn was designed with that intention from the beginning. This reduces the barrier in developing tools specifically designed for source code analysis. APIs of Roslyn are of three types, namely feature APIs, work-space APIs and compiler APIs. Feature APIs allow source code tool developers to do code refactoring and fixes. Work-space APIs allow plugin developers to perform actions specifically required in integrated development environments (IDEs) like Visual Studio such as finding references of a variable or code formatting. Compiler APIs allow even more sophisticated analysis of source code, by exposing direct calls to perform syntax tree and binding flow analysis.[12] Using an open-source implementation of Common Language Infrastructure (CLI) such as .NET Core, Roslyn will be able to compile in a platform agnostic manner capable of running CLI code in Linux, OS X and Windows.

П.П. Значи имам предвид нещо такова (някой по-запознат с Джава да каже дали го може това)
Compiling C# Code Into Memory and Executing It with Roslyn ($2)

Код
GeSHi (C#):
  1. Type type = assembly.GetType("RoslynCompileSample.Writer"); // run-time generated
  2. object obj = Activator.CreateInstance(type);
  3. type.InvokeMember("Write", BindingFlags.Default | BindingFlags.InvokeMethod, null, obj, new object[] {"Hello World"});

Ето и един малко по-интересен пример (почти като вируса за който споменах по-горе) - внимавайте какъв код му подавате - форматира диск без да се замисли (ако е закачен на нещо с диск де)
Using Roslyn to build a simple C# interactive script engine ($2)

Jokes about IT - A command
A guy prepares to demonstrate voice control of a computer.
- Silence, please, I will now demonstrate how easy voice control works.
A man from the back of the room:
- Format: C. Enter.


Титла: Re: FORTRAN
Публикувано от: growchie в Jun 03, 2016, 08:07
Скриптърските езичета минават и заминават от мода, само с/с++ остава :)))) Там джавички, питончета Цшарпчета. Идват и си заминават. :)


Титла: Re: FORTRAN
Публикувано от: villimon в Jun 03, 2016, 19:40
Какво мислите за R


Титла: Re: FORTRAN
Публикувано от: remotexx в Jun 03, 2016, 21:38
Относно R - повече минуси отколкото плюсове:
- това е по-скоро към средите отколкото само език.
- голям проблем да се направи EXE (а за библиотека изобщо не се споменава)
- още по-голям проблем deployment
+ статистически софтуер
то + може и да е и - защо не каза изначало още че ти трябва само за статистически сметки а не напр. за ядрена физика и разните му там интегрални и диференциални уравнения  ;D

Прознавам си не знам другите (МатЛаб, Октава и пр.) колко са добре/зле със статистиката, но за мен R (да кажем) е по-добър за статистика, а останлите за всичко останало. (като уточнявам че не съм експерт по R - може и да не е по-добър в статистиката)

Compile R script into standalone .exe file? ($2)
- Very short answer: No. Never has been. – Dirk Eddelbuettel


Титла: Re: FORTRAN
Публикувано от: go_fire в Jun 08, 2016, 12:00
Последните реинкарнации на Фортран от последните години са върху Жаба (виртуалната машина). Правилно намираш връзки от Наса, защото това е горе-долу мястото, където все още можеш да намериш да се ползва. Положението не е много по-различно от това на Кобол. От друга страна, както е известно, това е все още най-старият¹ език, който все още се използва.

Много е бърз, затова е малко престъпно да се подмята в една тема с Жаба (езика) и Смоко. Престъпно е, да е в една тема дори с Ц.

Обаче Вилияне, усещаш ли на къде бия?

Фортран е език от времето, когато мъжете бяха мъже, педерастията не беше модерна и всичко се пишеше отначало. Това не е език за всеки. Бих казал, че е за никой в днешно време. Ние сме просто лигльовци. Трудно мога да си представя някой да оцелее, ако трябва да пише на това.

Казваш, че бил много точен математически. Да и аз съм го чувал и съм проучвал този въпрос. Днес не можеш да си представим, как точно се е получила тази магия. Стигаме най-много до мързеливи изчисления, какъвто със сигурност не е случая. Но едно ще кажа, колкото и да е точен, няма да направи от днешните компоти — компютри. Не се заблуждавай! Фортран не е светият граал.

=*=

Извън тези разсъждания в темата се появи нишка, която ми е близка. Авторството ѫ се преписва на най-великият американски самолетен инженер². Трябва ли нещото да е красиво, за да е добро?

Бих казал хиляди пъти да. Но! В реалният живот изглежда съвсем не е така. Истинските инженери, изглежда по всичко, са лишени от естетическо чувство. Едно време³
компютрите бяха ужасни. Повръщаше се от вида им. Включително тези на Епъл бяха много зле. Едно сиво, направо бежаво, едни гадни форми, влудяващо. Наистина ми се гадеше и гледах да не ги гледам. И въпреки това, като компютри бяха сто пъти по-добри от сегашните. Не казвам по-бързи, казвам по-добри.

И тук следва философският въпрос — наистина ли днес компютрите са по-красиви? По-прости са. Простотата винаги е предимство. Например, ако погледнем един иФон, той е един правоъгълник със отсечени/заоблени ъгли и едно вдлъбнато кръгче долу в средата, в което има нарисувано квадратче. Това е всичко.

По едно време взеха да правят лаптопите⁴ да изглеждат като от лята стомана. В действителност бяха пластмасови и тежаха по килограм. Даже наоколо има тема, в която се възмущавам от това. Преди това пък бяха лъскавички, като лакиран махагон. Пак си бяха пластмасови.

Следва въпрос, наистина ли е красиво нещо, което от минималистичност и опростеност му липсва изобщо форма, какъвто е случая с иФон? Наистина ли е красиво нещо, което е направено да прилича на друго нещо, но не е, какъвто е случая със стила на лаптопите? Аз го наричам измама. Красивата лъжа, си остава лъжа.

Че компаниите взеха да си наемат дизайнери и стоките им вече да не изглеждат толкова гнусно е добре. Но изглежда направиха само това. Отвътре е кухо и кънти. Като мис Playmate или каквито са там модните конкурси за красота.

В темата обаче се пита специално за Питоня. Грозен ли е? Към змиите много хора подхождат със страх. Повечето са отровни и, ако ги закачаш, можеш да умреш. Има такива дето не са отровни, но могат да те задушат. Змиите са опасни. Движат се в тревата и може да не ги видиш.

Прави ли ги по-опасни от други хищници? Не. Една акула или тигър вероятността да ги видиш е също малка, а нападението им е по-сигурно и по-опасно за живота. Обаче обикновено към тях хората изпитват възхищение.

Страха към змиите си го обяснявам религиозен. Поколения наред на малките деца им се обяснява една приказка, как в змията се е въплатил рогатият, Луцифер. Аз бях дете през социализма и тази приказка също ми е разказвана.

Може би заради страха от змии, Питон днес се рисува комиксов.

Но грозна ли е змията? От научна гледна точка, змията е едно чудо. Това е най-просто устроеният звяр. Няма крайници, цялата му костна структура са прешлени, всичко в нея е просто устроено. И все пак ефективно. Една жаба дето ѝ правим дисекция в училище е далеч по-сложна.

Гуидо ван Росум направи своя език по този тертип — просто и съвършено. Премахна всички скоби. Аз като почитател на пърлачката изобщо не се усещах колко натоварващо е да имаш [{(<"''">)}] в езика си, че и още много друго. Скобите бяха сменени с отстъпи⁵. Така от първите стъпки си задължен да пишеш красиво и просто. Кода ти става висок, а не широк. И поради липсата на скоби и повечето нечетими знаци⁶ не прави кода ти да прилича на asciiart.

Не случайно учените припознаха Смоку като своя език. Не случайно днес Питоня води в класирането по написани библиотеки. Поради огромният брой е трудно да се прецени, кой от него Жаба, жабешки низ и Ц е с най-много, но разликите са малки.

С ръка на сърце обаче трябва да призная, че в аналогията на Наката има вярно. Технологията на Питоня не е добра. Той е бавен. Много бавен. В него има много недомислици в самата му машина. Дори в третата версия. Под повърхността е блато. Не мога да преценя, не ми достигат знания, дали това е така, защото Гуидо не е достатъчно добър инженер или има някакви неща в езика, които пречат да се направи. В такива случаи, българите обикновено казваме — по малко и от двете. Но понеже не знам, това е просто спекулация.





п.п. 4 Кб не е само до скъпотията. Тези системи са доста сложни сами по себе си и трудно ще намерят хора да ги разберат. А още по-малко ще намерят такива, които пренасяйки ги на друг език, ще могат да гарантират, че нещото работи правилно и стабилно;

п.п.п. Ремо ти си от хората, които най-много уважавам според интелекта им, който е непостижим за посредствени люде, кат' мене. И все пак, помним жабата от деветдесет и осма. Помним и жабата дълго след това. Изобщо не е вярно, че е била сравнима или, че дори днес е на Ц/Ц++. За Фортран, Кобол, Алгол пък хич. И не всички сметки могат да се пускат в отделни нишки.

За Жабата, че са я купили, за да я убият е безумие. Цялата им инфраструктура е на Жаба. Това е да си отрежеш клона. Нововъведения влизат трудно по различна причина. Виж за Мъсял е друго.

Кое се амортизира по-бързо — една интегрална схема или едно живо същество??? Кажи го на лаптопа ми, който се кани да ме напусне.

Куда не е правена за графични сметки. Графичните сметки не са кой знае, каква философия. Защо има графични ускорители Гейт е обяснявал няколко пъти.



-----
¹/над седемдесет годишен, дали не стана вече на 80;
²/чието име просто ми отбягва в момента, руските поне ги слагат в имената на самолети, та да се помнят;
³/началото до средата на 90-те години на миналият век;
⁴/само до преди три-четири години;
^5/ идеята разбира се, е от Паскал;
⁶/ демек, които не са букви и цифри.


Титла: Re: FORTRAN
Публикувано от: 4096bits в Jun 08, 2016, 18:23
Питоня колко е бърз или бавен, не зная. Това е първия език, който съм захващал малко по-сериозно. Навремето съм си играл със С, но не мога да сравня нищо, защото съвременните машини имат малко общо с преди 10 и повече години. Хванах го, зщото наистина масово се използва и реших, че комюнитито ще си го бива и може би ще е отзивчиво към начинаещ. Другата причина беше, че могат да се правят математически сметки с произволна точност. Това ми беше много важно и все още е, защото още не съм си довършил задачката, дето си поставих. И лесно го проверих. Кодирах 7-8 реда текст, получих число със над 400К цифри, което декодирах обратно до изходния текст. Та пробата мина успешно. За нещо повече засега не съм се пробвал, но и това ще стане. Не съм гледал и скоростта на изпълнение, защото е още в началото. Когато се опитам да смачкам, да речем някое 20МВ PDF или по-нататък може би филм, тогава ще мисля и за повече ядра и прочее щуротии. Та засега оставам на Питона. Лесно се пише, лесно се учи, а на мен времето ми е ценно и то много. Това впрочем е и най-големия разход на коммпаниите.
Но това си е моят избор. До преди година и нещо не съм сядал да програмирам сериозно, а и сега не мога да кажа, че е така, защото зная къде точно се намирам в това отношение и не мога да стъпя на професионалист и на малкия му пръст.. Все пак, започвам да добивам представа. Започвам. За какво говоря...

 Ако трябваше да направя същото, което направих на Питона на друг език, не зная, колко време щеше да ми отнеме. Било С++, FORTRAN или нещо друго. Спомням си, че на С и С++  целочислените типове имаха ограничение за големината си. А тук можеш да си напишеш колкото голямо число ти скимне или да го сметнеш. Може и другаде да е възможно и сигурно е, но нямах време нито желание да търся нещо подобно и седнах да чета и да се упражнявам.
Другото, което ме грабна в този еизк е изобилието от библиотеки. Особено ме очарова BS4. Когато трябваше да изровя едни неща от сайта на парламента, че те не смятат , че трябва да ги публикуват като документ за сваляне, ми всичко беше уеб боза, ми нямаше такова забавление.  ;D Песен
Но искам още да понауча С, Джава, ако изобщо просъществува това нещо, JS, Perlq=
Имам една-две идеи в главата за мобилно приложение, които може би ще ми позволят да се сдобия с ресурса за по-голямата идея, ама дори не зная на какъв език се пишат. Та ...Ащо успея да осъществя идеите си, после който иска да ги портва на дриг език. Аз ие възнамеивам да си изкарвам  стова хляба.  и
Всички изи приказии за товаикое език и по-добъри или по-бърз, иапочват даиме уморявит. Имах иител по мизика, койи казваше и, че всекистил е въиникнал и необходииост. Вяивам, че и иук нещата итоят такаи Всеки еик си има и силните ислабите сирани, и поичитателитеиси и протиивницети сии Мен ме иинтересува иа си реализирам нещаиа. И да и ми трябви безкрайни много вреие за това


Титла: Re: FORTRAN
Публикувано от: go_fire в Jun 08, 2016, 20:42
4 кб Смоко е страхотен език като за съвременен. С две ръце подкрепям решението ти. Не те съветвам да хващаш Жабата или Ц♯, ако не искаш да ставаш професионалист. Ако искаш, точно обратното — веднага почвай. Дори в тоя случай си награден от съдбата. Софтуни и Телерик непрестанно търсят такива като теб. Даже се самообвиних, че в другата тема вместо да пиша безсмислици, трябваше да пратя човека там.

Perl не захващай! Той е обратното на Питоня във всяко нещо. Няма да ти хареса. На мен ми е по сърце, най-много от алголоподобните, но не е за питоняги. Малко са хората, които могат да съвместят двата езика. Реално погледнато почти няма нещо единият да го може, а другият не, но обикновено си го правят по техният си начин. Объркващо е и е ненужно удвояване на необходимите познания. Оправдано е единствено, ако ще ставаш админ. и то на системи, които не са твой, просто защото двата езика са широко и паралелно използвани за администрация. Ама тогава сигурно и до PHP ще опреш. Bash/zsh разбира се са задължителни, но те не са точно програмни езици, просто приличат на такива.

А жабата не я мисли, тя ще надживее и двама ни. А Ц♯ ще го има поне докато го има и М$.

Виж js не е нещо, което съветвам някой лаик да знае, защото е гаден и безполезен. Виж за професионалист положението е обратното. Програмист само на js може, но без js, с каквото и да се занимава — не може. Задължително е! Не търпи отказ. Най-полезният език на планетата.


Титла: Re: FORTRAN
Публикувано от: remotexx в Jun 09, 2016, 21:47
А жабата не я мисли, тя ще надживее и двама ни. А Ц♯ ще го има поне докато го има и М$.
Пак се отклонихме от темата но.. да дам и аз моите 5 ст.

Според мен С# ще надживее Джава.
Не само езика ами и средата че и инструментите са свободни а има и Моно даже от версия 5 са изцяло отворени, даже и комилатора е написан на С# затова можеш да си го зареждаш като пакет/библиотека да си компилираш каквото си искаш и изпълняваш run-time.

и малко по темата:
1. C# (&Java) си имат BigInteger тип данни отдавна и можеш да си правиш изчисления с произволна сложност (е за сметка на времето за изпълнение т.е. чакаш повечко) - не е само 'Смоко'

2. Добре направиха че почнаха да се отварят Майкрософт, имаше едни други навремето (и още ги има) Борланд - сега Ембракадеро със Делфи - които си останаха затворени ...и сега едва ли някой (особ. от по-младото поколение) е чувал за тях и не че са лоши за мен са все още по-добри за Уиндос разработки (за съжаление за затворени и да само под Уиндоус)

3. Кога за последно си им поглеждал сайта на .net?

повече инфо тук
Announcing .NET 2015 Preview: A New Era for .NET ($2) - секцията .NET Open Source (и надолу)
The .NET Foundation ($2) -  малко по-технически подробности


или официалния сайт
https://www.microsoft.com/net/
https://www.microsoft.com/net/core#windows
It is very easy to get started with .NET Core on your platform of choice.
You just need a shell, a text editor and 10 minutes of your time.

За мен C# в момента се развива по-добре от Java която пък се свива все повече - да не ровя сега за препратки но скоро се оплакваха че уволнили  всички или повечето стари разработчици още от времето на Сън, напоследък само кръпки издават (кога ли ще има Джава 9) и запушват пробиви в сигурността, Гугъл ги изхвърли от браузъра Хром т.е. няма да има PPAPI Джава приставка т.е. няма аплети (тежките самостоятелни корпоративни приложения това не ги засяга - те ще си вървят), което ме навежда на мисълта е все повече заприличват на Флаш... не казвам че ще умрат за един ден но и не виждам да правят нещо усилено по въпроса (с оцеляването) за разлика от Майкрософт


П.П. Значи да обобщя по темата, човекът не разбираше или не знаеше как правилно да си формулира върпоса, затова попита за език а имаше предвид по-скоро за среда. Езикът не е толкова важен според мен - един език да има 20-30-40 оператора и толкоз (С имаше 26-27 оператора отначало по-малко от нашата азбука) а инак средата(библиотеки и пр.) е важна а напр. .Net може да се напише и на С/С++ (напр. Qt сами си направиха подобен фреймуърк но базиран на С++ с малко pre-compile magic и имаме вече signals & slots), даже и 'грозни' езици като R хората ги 'преглъщат' заради добрите библиотеки и средата за разработка. Никой вече не пише код в нотепад а все-повече разчитаме на средата да дописва, подсказва, хваща грешки и то не само по време на изпълнение. Според мен от неспециализираните среди със С#/.Net най-лесно и бързо, а от специализираните Математика-та, Октава-та.

П.П.П. А бе къде изчезна Бопчето... т.е. Марчето - тя беше по-запозната по тая част? (образователната т.е. от др. страна кое (е) по-лесно да се научи)


Титла: Re: FORTRAN
Публикувано от: laskov в Jun 09, 2016, 22:11
... по-скоро за среда.
Е това е моментът, дето мога и аз от морето да се включа! Щом е за среда - САМО Lazarus !!! :)  [_]3


Титла: Re: FORTRAN
Публикувано от: remotexx в Jun 09, 2016, 22:15
... по-скоро за среда.
Е това е моментът, дето мога и аз от морето да се включа! Щом е за среда - САМО Lazarus !!! :)  [_]3
Колега, кога за последно сте го ползвали Лазарус и за колко сериозен проект. А и да не забравяме че вече и C#/.net е с отворен код. Навремето Лазарус ставаше защото всичко друго беше затворено и колкото да се прехвърли по-лесно човек от Паскал (който май също поизмря) към нещо по сървеменно. Към днешна дата колко проекта (отворени и затворени) ползват Лазарус/Паскал, а?

П.П. Говоря като човек който цял живот с това се занимава от 8 до 64 битов копютри и езици от машинен, асемблер, С, С++, Паскал, Джава, ...до С#. Това което искам да кажа е, че за всяко нещо си има време, но също така е и до време. По мои наблюдения към момента нещата стоят така : C#, Java, Qt (embedded), C/C++ (OS) - говоря за сериозни проекти а не за някой малък скрипт или за лична употреба нещо и/ли за тест.


Титла: Re: FORTRAN
Публикувано от: laskov в Jun 09, 2016, 23:16
Колега, кога за последно сте го ползвали Лазарус и за колко сериозен проект.
Вчера. Измъкнах и прекодирах едни данни от стара FoxPro DOS-овска програма, която още се ползва, после ги прекарах през QlikView, за да направя накрая една екселска таблица. Без майтап.
Но не съм ти колега. Аматьор съм. Пак без майтап. От 7-8-те програмки, които съм написал, активно се ползват 4.
Иначе Lazarus е жив проект. Последната версия е от 18-ти февруари.

ПС: Ама това, което написах в предния пост е нашега.


Титла: Re: FORTRAN
Публикувано от: remotexx в Jun 10, 2016, 00:53
Аз не твърдя че не е жив или че не става за нещо и не може да се ползва. Ама някакво развитие при него има ли (не го следя отблизо) - доколкото знам преди 10-20 г. клонираха т.е. имитират мнооого стара версия на Борланд Делфи проекта и спряха дотам май напоследък само го докарват до да се компилира с по-нови компилтори ама не знам 64 бит да ли поддържат? А през това време Делфи колко дръпна напред, а нямат стигане (даже и от Майкрософт, но са за съжаление само под Уиндоус)

Delphi XE8 ($2)
32/64 бит (и то преди Майкрософт имат 64 бит С++ за Уиндоус), мобилни приложения, даже и уеб
таа.. Лазарус кога ще ги стигне
..да не говорим Lazarus IDE кога ще стигне RAD Studio ($2)


Титла: Re: FORTRAN
Публикувано от: go_fire в Jun 10, 2016, 03:18
Ремо, може би от по-добрият свят¹, си изпуснал да забележиш, но Вальо е направи нещо нечувано. Сглоби собственоръчно на Лазар системата за контрол на посетителският поток в делфинариума. И ако си кажеш, какво от това, давам поне две пояснения². Едното е, че делфинариума е най-малкото в първите три най-посещавани туристически обекта. А второто е, че се намира във Варна³.

Не знам, дали си се интересувал от Ембракадеро, но във Википедия има твърде занимателни данни. Това е компания въртяща милиарди щатски долари годишно. Изглежда обектният Паскал е новият Алгол.

Но аз ще си се върна на жабата. Казваш там не се появява нищо ново. А какво е новото в Ц♯ от последната декада? LINQ. Трудно е да вкараш нещо ново в зряла технология. Забележи Ламда, колко трудно стана, а в жабата вече имаше анонимни функции. От гледна точка на теорията, двете са едно и също. И все пак трябваха сезифовски усилия. И то какви?  Хората търсеха, кое е най-оптимално. Което какво говори? Днешните отговорници, не са тези дето са я правили. Те не я разбират. Между другото, хората, за които говориш не са разработчици, а евангелисти. Мозъците напуснаха Слънцето в момента, когато се разбра, че ще е превзето от Оракулите.


Ще се позачудиш, как така се застъпвам за Жабата, щом съм последовател на RMS, ще отговоря, че това е последното творение на Стийл, който не е по-малък от него. Има и друго. Жабата с всичките си недостатъци, все още е езика с най-обширна обща библиотека. Дълги десетилетия ще е така.

Относно диеза, там положението е по-сложно. От алчност меките пишки превзеха Ксамарин и с това останаха единствен доставчик на технологията. Какво от това, щом я отвориха? Ами това, че аз без да съм хазартен тип, не мога да се обзаложа, че ще ги има след 20 год. Ако оракулите ги няма, ще ги има ИБМ. Ако тях ги няма, ще ги има Азул Цинк. И тях да ги няма, ще има Ред Хат. Или някой друг ще има. Дори Вала умря, няма други наследници.

Няма да навлизам сега в теория, но bigint съвсем не е пътя към рая и не решава проблема на компотите, които наричаме компютри. Ще се задоволим, че върши работа.

Та връщайки се на проклетата жаба, казахме, че това е зряла технология. Няма виртуална машина, като нейната. Да се направи нова такава, ще трябват  още двадесет години. Малките пишки нямат този потенциал. Гошовица го няма. Нямат го и педалските ябълки. Те най-малко го имат. Няма кой и как да замени жабата. Бавно влизат там нови неща, мудно, но за тях по-важно е да не излизат. И ще ги бъде. А ние ще пасем трева.


п.п. Мара вече не се вяства насам. Последно я видях на „Бургас лаб“, който бе преди две години. Не се знае дали е в столицата и дали въобще е във ФМИ. Но има и други, които биха могли да се обадят, ако се обадят. Едно е сигурно. Жабата е невъзможна за научаване от когото и да било. А, ако случайно съществува такъв човек, то е добре веднага да го вземат в Наса. С такъв акъл, няма начин не осъществи кацане в съседна звездна система. Но, както всички знаем, интегрираните среди правят така, че да не е необходимо да се знае, каквото и да било. Но, ако бе само това, то Котлин щеше да е най-използваният език, а не е. И няма да бъде. Не става само с ядене.











-----
¹/ Който за съжаление не е рая, но е бая по-близо от тук дето сме ние;
²/ Тук самият той най-добре може да допълни;
³/ А там властва самодостатъчно една трибуквена организация, чието име носи само печал на произнесалият я. Сиреч геройството е равно на епично, без задължително това да е в технически смисъл, а просто в нормите на биологичното оцеляване.


Титла: Re: FORTRAN
Публикувано от: spec1a в Jun 10, 2016, 09:37
   remotexx: "Според мен С# ще надживее Джава."
   Ами няма как да стане, освен ако от оракула не са решили да я
ликвидират, поради техни си съображения.
   Джава се използва в най-популярната мобилна ОС: Андроид.
С# къде се използва толкова масово ?
   


Титла: Re: FORTRAN
Публикувано от: go_fire в Jun 10, 2016, 10:14
Всичко на оракулите е върху жабата, няма как да пожелаят да я ликвидират. Но това за Андроид нищо не значи. Според изхода от многобройните дела между двете компании, вече се чуват аварийни планове да бъде мигриран към Обективен Ц или друг език. А и това, че Андроид днес е популярен, съвсем не му гарантира популярност за в бъдеще.


Титла: Re: FORTRAN
Публикувано от: spec1a в Jun 10, 2016, 11:22
   Едва ли в обозримо бъдеще нещо ще надмине Android
   Кои са алтернативите: ОС Х , или може би windows (    ;D   ).
   Е, има някои читави Линукс платформи като Ubuntu,Tizen,Firefox OS ...
   Ако говорим за програмни езици: измишльотината Objective-C
се използва основно от apple и е много малко вероятно Android разработчиците
да се насочат натам.Като алтернатива май остава само С++ ,като се ползват някои
специфични графични библиотеки .
   


Титла: Re: FORTRAN
Публикувано от: go_fire в Jun 10, 2016, 11:48
Firefox OS го спряха. Шибаното Убунту не бих квалифицирал като „читаво“.

Знаеш  ли това „обозримо бъдеще“  много ми прилича на едно „недалечно минало“ дето слушахме подобни неща за Palm.

Обективното Ц не е чак такава измишльотина, макар към днешна дата да се  води доста вехт. И има прекалено много хора, които епълци принудиха да го научат. И тук пак ще припомня, че докато писах за този език до към 2009-та, хората ме питаха — к'во, к'во? Никой не знаеше за съществуването му. Почти. Но днес не е така. Не е без значение на двете главни платформи да ползваш една и съща технология. Относно Суйфт, той има още чували със сол да яде.

Ц++ днес не е особено долюбван, макар все йощ да се използува на една популярна ОС. При нас се ползва за Кют, но там отмира. Почти е унищожен в Кют. И разбира се игрите. Там ще си е още дълго. Та Ц++ изобщо не го броя в алтернативите. Но той и към днес е наличен за Андроид.

За другата си ОС Гошовица ползва едно надмножество на жабешкият низ, та няма да се учудя да го видя и в Андроид, най-малкото като алтернатива. В този случай не знам, колко трябва да се постараят, защото към  момента обикновеният js е сериозна алтернатива там и има достъп до почти всичко. До каквото няма, му добавят.

Та като  обобщение. Не е никак сигурно, че Андроид ще продължи да е властваща  „ОС“ (отбележи кавичките), независимо от набраната инерция. Също така изобщо не е непоклатимо използването на Жаба за него. А освен изброените алтернативи, като нищо може да се появи и чисто нов език.


Титла: Re: FORTRAN
Публикувано от: Naka в Jun 10, 2016, 11:49
Значи говорим за симулация на нещо, някакъв физически процес, по някакъв математически модел. Обаче не мисля че такова нещо ще излезе 'сериозен'/голям проект като код. една такава симулация ще излезе най много един файл (скрипт) или 2-3 допълнителни инклуде файла.

Какво имам в предвид. Да кажем че трябва да се моделира/изпита нещо. Обикновенно се гледа нещо написано в книгите или публикация в пдф. Но това което е публикувано не става веднага да се напише. Защото от формулите до програмирането им има още много подробности - начални услови, как да се използват формулите, недоизказани работи - все неща които трябва да се уточнят и да се изпитат.

Например тези мат статии все ги пишат разни 'чисти' математици а те са си малко немарливи. >:( Пишат нещо, ама какво е, как се използва, какво означава само те си знаят. ??? Като добавим и че всеки си използва негови си означения - нещата стават много грозни. Даже и да си наясно с теорията, описана в някой пдф, пак ще има много да се чудиш ако е написана немарливо!
Сега ако има тук Математици да не вземат да се обидят [_]3

Т.е. от теорията до внедрявето и има много работа. Затова ти трябва един 'скрипт' и то без входен интерфейс. Било то на фортран, octave, C. Например нещо такова:

Код:
/* начални условия */
А=1223454;
B=2.23423423;
C=array();

/* Модела и формулите тука */
......
 
/* някаква визуализация */
Plot();

И почват експерименти: Променяш началните условия направо в кода. Променяш сметките и т.н.
Едва когато се уточни всичко почне да става това което е по теория - може да спреш.

Ако от това обаче трябва да се направи в цялосна програма за симулация, която да е универсална и да я ползват други, нещата стават много сложни. Проекта ще стане огромен с много файлове и зависимости, просто защото ще трябва да му се направи потребителският интерфейс. И може да я правите на каквото си щете.


 




Титла: Re: FORTRAN
Публикувано от: growchie в Jun 10, 2016, 15:24
   Едва ли в обозримо бъдеще нещо ще надмине Android
   Кои са алтернативите: ОС Х , или може би windows (    ;D   ).
   Е, има някои читави Линукс платформи като Ubuntu,Tizen,Firefox OS ...
   Ако говорим за програмни езици: измишльотината Objective-C
се използва основно от apple и е много малко вероятно Android разработчиците
да се насочат натам.Като алтернатива май остава само С++ ,като се ползват някои
специфични графични библиотеки .
 

Злите езици твърдят, че Гугъл разглеждат Swift като замяна на Jaba-та. Обджектив-Ц първо, че изобщо не е измишльотина, второ, че и той отива в историята. Епъл мигрират към Swift.


Титла: Re: FORTRAN
Публикувано от: growchie в Jun 10, 2016, 15:36
Та ако се върнем на FORTRAN, по време на дисертацията имах възможност да работя с хора които са писали на това още от времето на пънчкартите и мини компютрите (не ПЦ-тата). Та каквото научих от тях е, че не математичният алгоритъм е толкова сложен, колкото да успеят да го реализират с ограничените ресурси които са имали в наличност тогава. То за това ви се струват такива гурута, просто защото са си изпилявали мозъка как с толкова малко РАМ да сметнат даден проблем преди второ пришествие. Затова са си създали доста добре оптимизирани библиотеки, които и в момемнта може да се ползват и това се брои като богатство на езика, а всъщност е богатство на комюнитито.
Сега всички пилеят ресурси по виртуални машини, гарбидж колектори и подобни неща. Навремето не са имали този лукс просто.


Титла: Re: FORTRAN
Публикувано от: Acho в Jun 10, 2016, 15:53
Става дума за Fortran IV за големите машини ЕС1020 от Единната серия ли ? Те работеха с перфокарти и перфо-четец.


Титла: Re: FORTRAN
Публикувано от: spec1a в Jun 10, 2016, 16:13
   Навремето като ученик в математическа гимназия съм учил FORTRAN4.
После, като студент, се хванах да правя курсова работа на една мадама,
(на FORTRAN77), има разлики в синтаксиса с FORTRAN4,бях пообъркал
някои неща и щях да го отнеса, както би казал давай-огън:
бой, сръбска музика и ... сещайте се  ;D


Титла: Re: FORTRAN
Публикувано от: growchie в Jun 10, 2016, 18:51
Става дума за Fortran IV за големите машини ЕС1020 от Единната серия ли ? Те работеха с перфокарти и перфо-четец.
Предполагам. По мое време ги бяха изхвърлили вече а перфокартите се ползваха за макалатура и за отбелязване страниците на книгите.
За щастие не ми се наложи да пиша дисертация на фортран, защото с това чисто win32 апи щях да почина докато си направя интерфейса на програмата. По мое време бяха портнали всичко на някакъв Compaq Visual Fortran. Май го имам някъде из архивите.


Титла: Re: FORTRAN
Публикувано от: Acho в Jun 10, 2016, 19:05
Ние го учихме навремето, когато бях първи курс, и оттогава ми е спомена за Fortran IV. Само като си спомня самите машини, какви грамадни гардероби бяха, и какви яки захранващи кабели имаха. Поне на мен ми бяха доста интересни, макар да не пускаха много-много студентите там в машинните зали. А пък изхода от програмите беше една разпечтка на перфорирана хартия.


Титла: Re: FORTRAN
Публикувано от: growchie в Jun 14, 2016, 22:24
 @vilimon не ни слушай какво си приказваме тук за FORTRAN. Ако си си намерил задачка и ти се занимава напиши го на него. Тъкмо ще се освободиш от излишната работа да мислиш за обектно ориентирано програмиране и да правиш "архитектури". Ще може да се концентрираш точно върху задачата и знаеш ли, може да ти хрумне как да я направиш по-бързо. Но не си прави илюзиите, че някой език ще ти свърши твоята работа по решаването на проблем.