Отиди на
Форум "Наука"

За езиците за програмиране


Recommended Posts

  • Потребители

Знаете ли, къде може да се намери списък с езиците за програмиране, заедно с техните създатели. В Wikipedia, например, лесно се намира списък с езиците, но пък трябва да отваряш страницата в всеки език, за да намериш съответния създател.

Link to comment
Share on other sites

  • Потребители

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

С тази цел направих следния форум:

http://proglang.bulboard.com/

Той има временен характер, като на по-нататъшен етап не е изключено да го преработя като сайт, а защо да не е подсайт към nauka.bg (каквито вече има).

Link to comment
Share on other sites

  • Потребители

Ами разделението е субективно. Група А са езиците, с които възнамерявам да се захвана по-сериозно. Идеята е в тази група да има по представител от определен тип език. Група Б са езиците, които са твърде популярни - за тях няма особен смисъл да се пишат туторияли, защото в интернет има много (изключение е езикът C/C++, който е популярен, но за който е добре да имаме туториял, просто като еталон - затова е в група А). Група В са всички останали езици - някои от тях ще прескочат в Група А, но в бъдеще. Почти всички езици в тази група са ми непонятни изцяло (за разлика от другите 2 групи, които съдържат езици, които съм разучавал, поне частично).

Между другото промених примера на Refal5, защото беше много оплетен и непоучителен с мой собствено написан (вероятно и за други езици ще направя същото). Като отговор в тази тема се опитах да опиша начина на действие на програмата! Прочетете го и кажете дали ясно съм го обяснил (знам, че засега не е особено добре).

Link to comment
Share on other sites

  • Потребители

Направих още една стъпка по-нататък, в развитието на форума.

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

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

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

За момента планирам секциите по изграждане на езици за програмиране да започна един все още неясен проект. Той ще е свързан с изграждането на GUI език за програмиране, т.е. такъв който може да служи за по-лесното и бързо проектиране на приложения с графичен потребителски интерфейс. Забележете, че не говорим за визуален език за програмиране, като Visual Basic например. Целта е да имаме реален език с описание, но който да е твърде удобен за изграждането и използването на графични интерфейси на приложения.

Накратко в този форум ще представям резултатът от дейността си по създаването на програмен език. Дори и ако никой не са включи да дискутира, или да участва, то пак форумът ще може да е полезен на някои хора, като го четат. Когато правя съществени промени във форума (както се случи сега), то ще пиша в тази тема, за да информирам останалите заинтересовани.

Link to comment
Share on other sites

  • Глобален Модератор

Смятам, че следните книги ще ти свършат добра работа:

- М. Тодорова "Езици за функционално и логическо програмиране", първа и втора част

- Велина Славова "Увод в алгоритмите и програмирането"

Link to comment
Share on other sites

  • Потребители

Смятам, че следните книги ще ти свършат добра работа:

- М. Тодорова "Езици за функционално и логическо програмиране", първа и втора част

- Велина Славова "Увод в алгоритмите и програмирането"

Точно тези книги по-скоро бих написал по-хубави, отколкото да прочета тези.

Но целта ми е съвсем различна. Идеята е да представя дадения език за възможно най-кратко време, така че да предизвикам интерес. И като начален по-сериозен опит реших да започна с това:

http://bg.wikibooks.org/wiki/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%B5%D0%BD_%D0%B5%D0%B7%D0%B8%D0%BA_Icon

Иначе ако говорим за книга за "Езици за функционално и логическо програмиране", то препоръчвам следната:

Любомир Стойчев, Анатоли Антонов, Иван Филипов "Програмни езици за изкуствен интелект", 1989, издателство Техника

Малко е старичка (т.е. едва ли вече може да се намери някъде), но пък е доста по-добра от тези първите две, които ISTORIK дава.

Горната книга съм я чел и изглежда че е писана от хора, реално програмирали на споменатите езици, а не просто научили и преразказали. Освен това в книгата са представени 3 езика List, Prolog, OPS5. Този последният, например, е доста слабо известен, но си е част от групите езици - именно тази група, за реализирането на експертни системи.

Link to comment
Share on other sites

  • 2 седмици по-късно...
  • Потребител

Поздравления за идеята. Наистина е много добра.

Аз бих препоръчал и написаното от Кнут. Това са около пет тома, а вътре определено има интересни и полезни пасажи.

Що се отнася до C, то първата книга на Керниган и Ричи, в частта и с "анализи на чужд код" е като кръстословица и може да се използва като своеобтразен еталон.

Друг момент е липсата на информация за Delphi и Lazarus. Това са изключително развити системи от които всички други просто ... копират. Например Visual Studio е като старите редактори на Delphi (версиите до 2009). Не знам защо но мнозина (основно в България, защото никъде другаде не съм чул или чел нещо подобно) считата, че Delphi e Pascal (отдавам го на непознаването на езика).

Много добра идея.

Истината е, че в България никой не пише за това "как се прави софтуер". Всички пишат за това "как се използва софтуерен продукт". Много добро и навременно начинание. Още веднъж поздравления.

И само да спомена ...

Нужно е да се напише и добра дума за ... Бил Гейтс.

Все пак съгласете се, че той успя да събере BASIC (забелязах, че името му отсъства в списъка със създатели на езици) в 64 KByte, че и да остане място за програми. Кажете кой друг го е направил?

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

Link to comment
Share on other sites

  • Потребители

Създадох липсващият раздел за промишлените езици - той е Група В. Размених групи А и Б, а и сложих описание на всяка от групите.

Относно Кнут - чел съм сериозно само 2 том, а останалите не съм сигурен че съм ги и виждал под някаква форма. Теорията при езиците за програмиране е много важно нещо. В момента има подфорум "Теория" в раздел "Разработка". Истината е, че планирам да има цял раздел "Теория" (може да не се казва точно така) с различни подхоруми, но това ще трябва да стане в бъдеще. В момента се опитвам да популяризирам форума, като ползвам следната стратегия: По-горните раздели са за по-начинаещи и с по-леко представено съдържание. Например най-горният раздел е "Блог", къдато ще има текстове, без особена нито научна нито практична стойност, но да е интересно за четене.

Всички форуми са достъпни за четене и писане за регистрираните потребители (а за регистрацията дори не се налага дори валеден email - може да се ползва спокойно email@example.com или каквото друго ви хрумне). Раздели "Група *", обаче, не допускат пускане на нови теми (а там всяка тема ще е език за програмиране) - трябва да си от група "Добавячи". Мога да направя всеки регистриран в тази група, стига да е достатъчно запознат с езиците за програмиране.

Между другото Google вече е индексирал 40 страници от форума, което е добре...

Link to comment
Share on other sites

  • Потребители

Синтаксисът на езиците за програмиране няма нищо общо с синтаксисът на естествените езици. Използват се единствено думи от езика. Преди време имеше един език за програмиране Logo, който беше преведен на български. Всъщност това не беше българска измислица, а май самият език насърчаваше такава политика - просто беше предназначен за деца основно. Мисля, че и руснаците са правили опити на времето с такъв език.

На практика, обаче, използваният набор от думи не е съществено за езика по никакъв начин. Думите, които се ползват в езиците вообще не е ти помага, ако им знаеш смисъла. В програмните езици е важен синтаксисът. Така например какво значение има че while означава докато - важното е как се използва в конструкция от вида "while(условие){тяло}", а това винаги си се учи. Друг е въпросът, дали кирилицата да може да се ползва в имената на променливите - но това по-скоро е въпрос на реализация, отколкото на възможности на езика.

Като говорим за различни езици за програмиране, то най-важното е спецификата, която извършват. Важно е, дали даден вид задача ще може да се реализира лесно и ефективно с езика, или не. При говоримите езици нещата са в друга плоскост. На практика всичките описват едно и също нещо - реалния свят. И затова има възможност за превод. При програмните езици такова животно като "превод" е много по-рядко срещано (освен компилаторите, които превеждат от даден език към assembler), а за някои езици е дори невъзможно. Няма начин да преведеш програма на C на Prolog.

Link to comment
Share on other sites

  • Глобален Модератор

Има ли език за програмиране, но да е на кирилица и с такива понятия, защо не и пригоден синтаксис?

Има COBOL за Main Frame /IBM архитектури - 360 и 370/ на руски. Разработката е на IBM за руския пазар.Излиза около 1970 година.

Редактирано от Б.Богданов
Link to comment
Share on other sites

  • Глобален Модератор

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

С тази цел направих следния форум:

http://proglang.bulboard.com/

Той има временен характер, като на по-нататъшен етап не е изключено да го преработя като сайт, а защо да не е подсайт към nauka.bg (каквито вече има).

Забелязвам пропуснати езици във форума. Говоря за езиците включени в Language Environment на IBM

- Асемблер 360/370/390

- PL1

- IBM RPG

Link to comment
Share on other sites

  • Потребител

Преди време имеше един език за програмиране Logo, който беше преведен на български. Всъщност това не беше българска измислица, а май самият език насърчаваше такава политика - просто беше предназначен за деца основно. Мисля, че и руснаците са правили опити на времето с такъв език.

Да, това ЛОГО дори го изучавахме в училище (средата на 80-те).

Link to comment
Share on other sites

  • Потребители

Забелязвам пропуснати езици във форума. Говоря за езиците включени в Language Environment на IBM

- Асемблер 360/370/390

- PL1

- IBM RPG

Изключвайки група Г, която е несериозна в някаквъв смисъл, то в групи А и Б съм поместил езици за програмиране, които съм изучавал под някаква форма. Изключения са само c# (който по едно време също почнах да изучавам, но дотам) и Java (който никога не съм изучавал) и Ruby, който обаче бях почнал да го уча.

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

Link to comment
Share on other sites

  • Глобален Модератор

Изключвайки група Г, която е несериозна в някаквъв смисъл, то в групи А и Б съм поместил езици за програмиране, които съм изучавал под някаква форма. Изключения са само c# (който по едно време също почнах да изучавам, но дотам) и Java (който никога не съм изучавал) и Ruby, който обаче бях почнал да го уча.

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

PLа е адски мощен език за големи машини, ако се използува за писане на ONLINE транзакции с помощта на CICSa.

Програмистите от моето и предишните поколения го знаят.... включително и аз... ;)

Link to comment
Share on other sites

  • Потребители

PLа е адски мощен език за големи машини, ако се използува за писане на ONLINE транзакции с помощта на CICSa.

Програмистите от моето и предишните поколения го знаят.... включително и аз... ;)

Чудесно. Една регистрация там и отбелязване на липсващите езици (в подфорум "Предложения за езици"), заедно с групата за която се отнасят (например PL1 ще е от група В). Не е нужно да се оставя валиден email при регистрацията. Това може дори да е последното посещение в оня - не е важно. Просто ако приемем, че в бъдеще се появи някой заинтересован и попита за PL, то спокойно могат да му отговоря, че не го знам и че друг го е предложил. Иначе при подобна ситуация ще излезе, че просто съм копирал имена на езици за програмиране, като може би си нямам никаква представа от много от тях (а истината е както я отбелязах по-горе).

Link to comment
Share on other sites

  • Глобален Модератор

Чудесно. Една регистрация там и отбелязване на липсващите езици (в подфорум "Предложения за езици"), заедно с групата за която се отнасят (например PL1 ще е от група В). Не е нужно да се оставя валиден email при регистрацията. Това може дори да е последното посещение в оня - не е важно. Просто ако приемем, че в бъдеще се появи някой заинтересован и попита за PL, то спокойно могат да му отговоря, че не го знам и че друг го е предложил. Иначе при подобна ситуация ще излезе, че просто съм копирал имена на езици за програмиране, като може би си нямам никаква представа от много от тях (а истината е както я отбелязах по-горе).

Ок.

Ще оставя линкове към IBMски книги с описание на езика. Мога да отговарям на въпроси свързани с batch и On-line приложно програмиране. При On-line в два мода - псевдо диалог и диалог, което разбира се е свързано с CICS, VSAM, DB2 /SQL/DS/ под управление на VSE/ESA или z/OS. За работа под управление на VM не поемам ангажимент.

Също така и работа с MQSeries / WebSphere MQ/

****

Мисля че трябва да обясня защо толкова спрягам този ПЛ.

Има диалекти на ПиЕла като HAL/S на който работи Space Shuttle program към NASA:-) Cool ah?

Има и други диалекти на ПиЕла използувани в военноморските сили на САЩ. :-)

С една дума - страхотен език!

Link to comment
Share on other sites

  • Потребител

Подкрепям колегата Богданов за PL.

В България има твърде неразбираемо отношение към езиците за програмиране. :biggrin:

Ако някой е рабитил на PDP, VAX или някой от моделите на IBM, няма проблем. Но виж с другите е ад ... :bigwink:

Включих се само за да дам информация за един нов език, който в момента е в процес на разработка. Името на езика е GO.

Синтаксисът е налогичен на този на C, но компилаторът е много различен.

Имам съвсем малко информация, но в момента, в който посъбера нещо, веднага ще я предоставя.

Link to comment
Share on other sites

  • Глобален Модератор

Подкрепям колегата Богданов за PL.

В България има твърде неразбираемо отношение към езиците за програмиране. :biggrin:

Ако някой е рабитил на PDP, VAX или някой от моделите на IBM, няма проблем. Но виж с другите е ад ... :bigwink:

Включих се само за да дам информация за един нов език, който в момента е в процес на разработка. Името на езика е GO.

Синтаксисът е налогичен на този на C, но компилаторът е много различен.

Имам съвсем малко информация, но в момента, в който посъбера нещо, веднага ще я предоставя.

Благодаря за подкрепата! :-))

***

Чувал съм за GO. Мисля че е Гугълът е виновник за възникването му?

Редактирано от Б.Богданов
Link to comment
Share on other sites

  • Потребители

Go наистина е език на Google и вече не е чак толкова нов. На практика този език не се рекламира от Google активно и ми приличаше, че не се е наложил дори в проектите на самия Google. Събирайки доказателства, то реших да спомена за "Google App Engine" и изненада... Споменът ми, че се предлагат интерфейси само за Python и Java вече не е верен. Оказа се, че вече са добавили и интерфейс за Go.

Между другото когато пуснаха езика, то стана малък скандал, защото вече е съществувал език с име "Go!", т. е. един препинателен знак е разликата.

Като говорите за PL имате пред вид PL/I нали. Защото изглежда че в Wikipedia се споменава и множество други PL-и. Добавих PL/I във форума.

Link to comment
Share on other sites

  • Глобален Модератор

***

Като говорите за PL имате пред вид PL/I нали. Защото изглежда че в Wikipedia се споменава и множество други PL-и. Добавих PL/I във форума.

Имам предвид PL/I, но разговорно между използуващите езика специалисти са се наложили имена като ПиЕл, Пли и подобни производни. :-))

Link to comment
Share on other sites

  • Потребител

xyz,

Може би трябва да добавиш и SQL. Макар доста различен от останалите, все пак SQL всъщност движи съвременния цифров свят. :biggrin:

Link to comment
Share on other sites

  • Глобален Модератор

xyz,

Може би трябва да добавиш и SQL. Макар доста различен от останалите, все пак SQL всъщност движи съвременния цифров свят. :biggrin:

Амчи то... за къде сме без SQLа?

Редактирано от Б.Богданов
Link to comment
Share on other sites

Напиши мнение

Може да публикувате сега и да се регистрирате по-късно. Ако вече имате акаунт, влезте от ТУК , за да публикувате.

Guest
Напиши ново мнение...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Зареждане...

За нас

"Форум Наука" е онлайн и поддържа научни, исторически и любопитни дискусии с учени, експерти, любители, учители и ученици.

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

Подкрепи съществуването на форумa - направи дарение:

Дари

 

 

За контакти:

×
×
  • Create New...
×

Подкрепи форума!

Твоето дарение ще ни помогне да запазим и поддържаме това място за обмяна на знания и идеи. Благодарим ти!