LINUX.ORG.RU

Правильно будет «Is Perl 6 dead?». Мёртв, конечно, кому нужен неподдерживаемый во всех смыслах язык.

anonymous
()

1) Мертворожденный язык. 2) Действительно, это наркомания.

outtaspace ★★★
()

Единственный язык, который у меня «не пошёл». Даже на эрланге just 4 fun написал пару приблуд, а пёрл - чёт ваще не понял удовольствия. Как по мне, нынче полно куда более удобных ЯП, а для них, в свою очередь, библиотек, фреймворков, тулзов и всяких приблуд.

Bahamut
()

Помню, на вопрос «Почему символом perl 6 выбрана миленькая бабочка?», Ларри Уолл ответил: «Чтобы нравиться семилетним девочкам». С тех пор и к Ларри, и к перлу отношусь с насторогой.

newb
()

Программа на базе примеров из оф.документации (на тему promises) работала вполне сносно по скорости, хотя запускалась просто охрененно долго. Язык сам по себе понравился, хотя безальтернативное ООП вызывает недоумение: по-моему ООП не в тренде, да и сам Ларри Уолл всегда относился к ООПу со скепсисом. Например, языки типа Ruby и Python в первую чередь именно дебильные конструкции типа string.print делают исключительно уродливыми. В Perl6 подкупает невероятное разнообразие языковых средств - пихтону до такого просто как пешком от Рязани до Парижа.

DRVTiny ★★★★★
()

Для меня Perl закончился при переходе всех и вся на UTF-8, хотя раньше его использовал в разных админских проектах. Очень ждал Perl6, читал про его виртуальную машину, возможности поддерживать реализации разных ЯП и т.д. Но время шло, «а Германа всё нет», книжки со всякими верблюдами и винторогими козлами всё чаще оставались пылиться на книжной полке.

Сейчас мне нужен кросс-платформенный {win lin mac} инструмент, с обширными наработками, мелкоразмерный, портабельный, мощный, с «хорошими» регекспами, с возможностью удобного в разработке GUI, короче, теперь я чаще использую Tcl/Tk, в разновидности tclkit с вариациями:

anonymous
()
Ответ на: комментарий от DRVTiny

Например, языки типа Ruby и Python в первую чередь именно дебильные конструкции типа string.print делают исключительно уродливыми.

если бы ты хоть чуть чуть понимал ооп то знал бы что stdout.print, file.print, socket.print а ни как не string.print

TDrive ★★★★★
()
Ответ на: комментарий от DRVTiny

В Perl6 подкупает невероятное разнообразие языковых средств - пихтону до такого просто как пешком от Рязани до Парижа.

нашел что сравнивать) питон создавался по принципу «there should be one—and preferably only one—obvious way to do it»

TDrive ★★★★★
()

только для семилетних девочек

buratino ★★★★★
()
Ответ на: комментарий от DRVTiny

Я понял только, что ты хэйтишь Питон. В Пёрл6 подкупает, что сообщество стало дальше развивать Пёрл5, таким образом похоронив шестую версию, как и PHP в своё время.

Virtuos86 ★★★★★
()
Ответ на: комментарий от TDrive

то знал бы что stdout.print, file.print, socket.print

Это не ООП, это модули a la Pascal.

а ни как не string.print

А это как раз эталонное ООП с интерфейсом Printable.

no-such-file ★★★★★
()
Ответ на: комментарий от no-such-file

Это не ООП, это модули a la Pascal.

Это объекты которым ты отправляешь сообщение о том что им нужно сделать, строка не может напечатать сама себя просто так.

А это как раз эталонное ООП с интерфейсом Printable.

Просто покажи где ты видел string.print

TDrive ★★★★★
()
Ответ на: комментарий от TDrive

Просто покажи где ты видел string.print

возможно, имелись ввиду методы строк:

вида:


str = "Привет" 
def str.bye 
  "Пока!"
end 
puts str.bye

# Дана строка в которой слова записаны через пробел. Необходимо перемешать все слова этой строки в случайном порядке.
str="Point Line Triangle Square Pentagon"
puts str.split(" ").sort_by{ rand }.join(" ")

так кому-то даже нравится такое :)

anonymous
()
Ответ на: комментарий от TDrive

Просто покажи где ты видел string.print

Просто везде. Начиная с жабки где Serializable объекты (например StringBuilder) должны иметь writeObject(java.io.ObjectOutputStream) и заканчивая новомодным го, где объекты (включая строки) реализуют writeTo(io.Writer)

no-such-file ★★★★★
()
Ответ на: комментарий от no-such-file

Начиная с жабки где Serializable объекты (например StringBuilder) должны иметь writeObject(java.io.ObjectOutputStream)

The writeObject method is responsible for writing the state of the object for its particular class so that the corresponding readObject method can restore it.

Про go не знаю но все хеллоу ворлды на го выглядят как fmt.Println(«Hello, World») а не «Hello, World».writeTo(fmt)

И вообще DRVTiny говорил это приминительно к руби и питону.

TDrive ★★★★★
()
Ответ на: комментарий от TDrive

И вообще DRVTiny говорил это применительно к руби и питону.

ок, про ruby, сможешь объяснить поведение?

str = "Привет" 
def str.bye 
  puts "Пока!"
end 
str.bye

и

str = "Привет" 
def str.bye 
  puts "Пока!"
end 
puts str.bye
anonymous
()
Ответ на: комментарий от no-such-file

Это не ООП, это модули a la Pascal.

Имелось в виду что-то типа

File.open('path/to/file', 'w') do |file|
  file.print('some text')
end

а не модули (тащемта, модули в Ruby пишутся в CamelCase).

theNamelessOne ★★★★★
()
Ответ на: комментарий от anonymous

puts печатает свой(-и) аргумент(-ы) и возвращает nil. В Ruby возвращаемым значением функции является значение последнего выполненного выражения (опустим ensure). Дальше ты сам сможешь додумать.

theNamelessOne ★★★★★
()
Ответ на: комментарий от TDrive

Питон создавался для военных, тупых надменных солдафонов. Соотв. контингент и пользуется этим языком. Впрочем, странно, что многие из упомянутых господ на самом деле не служили.

DRVTiny ★★★★★
()
Ответ на: комментарий от Virtuos86

Сообщество развивает и Perl5, и Perl6. Даже сами отцы-основатели полагают 6-ю и 5-ю версии в действительности разными языками, поэтому нет ничего странного в том, что оба они развиваются параллельно.

DRVTiny ★★★★★
()
Ответ на: комментарий от DRVTiny

Да уж, та же бадяга, как с ветками питона.

Hertz ★★★★★
()
Ответ на: комментарий от TDrive

Насчёт происхождения Питона как языка программирования, разрабатывавшегося изначально как простой язык для программирования военных систем? Я это знаю, и если есть большая в том необходимость, дополню статью Википедии, если там этого нет.

Ой, а уже всё есть вообще-то, мне даже напрягаться не стоит. Можно только акцентировать внимание на том неоспоримом факте, что первая реально юзабельная версия языка была создана на деньги МинОбороны США:

Во время пребывания в CNRI Ван Россум запустил проект «Программирование для всех» (англ. Computer Programming for Everybody, CP4E), предназначенный сделать программирование доступным для большего числа людей, на основе получения базовой «компьютерной грамотности», подобной базовому знанию языка и математики, требуемых большинству работающих. Python играл центральную роль в этой инициативе, благодаря своей нацеленности на ясный синтаксис. Проект CP4E финансировался DARPA,[11] в данное время проект закрыт.

DRVTiny ★★★★★
()
Последнее исправление: DRVTiny (всего исправлений: 1)
Ответ на: комментарий от anonymous

Как уже сказали выше в первом случае ты вызываешь метод который выводит на экран «Пока!» а во втором случае ты еще и выводишь на экран возвращаемое значение этого метода. Разве это не очевидно из кода?

TDrive ★★★★★
()
Ответ на: комментарий от DRVTiny

Насчёт происхождения Питона как языка программирования, разрабатывавшегося изначально как простой язык для программирования военных систем?

AmoebaOS что ли военная система?

https://en.wikipedia.org/wiki/Corporation_for_National_Research_Initiatives

Ну прям эталонные тупые солдафоны))

TDrive ★★★★★
()
Последнее исправление: TDrive (всего исправлений: 1)
Ответ на: комментарий от anonymous

т.е. вызовы равнозначны в ruby ?

В первом случае у тебя вызов метода и игнорирование его возвращаемого значения, во втором случае у тебя вызов метода и вывод его возвращаемого значения на экран. Как объяснить проще я не знаю.

TDrive ★★★★★
()
Ответ на: комментарий от TDrive

Понятно, спасибо, я знаю как это работает )
Я хотел от тебя услышать, как puts обрабатывает puts

В общем, хотелось показать ещё одну причину, почему не люблю писать на ruby и почему мне не нравится читать advinced код на ruby )

anonymous
()
Ответ на: комментарий от anonymous

Я хотел от тебя услышать, как puts обрабатывает puts

Как и любую другую функцию, использует её результат как свой аргумент.

В общем, хотелось показать ещё одну причину, почему не люблю писать на ruby и почему мне не нравится читать advinced код на ruby )

А как по твоему должно обрабатываться выражение fn1(fn2())? Оно где то работает не так как в руби?

TDrive ★★★★★
()
Ответ на: комментарий от DRVTiny

Питон создавался для военных, тупых надменных солдафонов

Пруфы?

Соотв. контингент и пользуется этим языком.

Пруфы?

Впрочем, странно, что многие из упомянутых господ на самом деле не служили.

Пруфы?

theNamelessOne ★★★★★
()
Ответ на: комментарий от DRVTiny

Питон создавался для военных, тупых надменных солдафонов

ясно

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от TDrive

То, что создавалось для Amoeba и то, что дорабатывалось для DARPA - две разных вещи. Для DARPA язык был максимально упрощён и сделан именно таким убого-ортогональным, каким мы его видим сейчас. Впрочем, DARPA не заинтересовались бы им, если бы он изначально не был слегка прямо противоположен православному принципу TMTOWTDI.

Скажем так, Пихтон изначально был языком для людей с мировоззрением путиноидов.

DRVTiny ★★★★★
()

Пробовал писать на нем dsl'и. Очень быстро получилось написать, при крайне низком владении темой.

Пока не на чем применить. Нет пет.проектов.

Deleted
()
Ответ на: комментарий от DRVTiny

Скажем так, Пихтон изначально был языком для людей с мировоззрением путиноидов.

Почувствовал, что сливаешься и решил перевести разговор в политоту?) Попробуй тоньше.

TDrive ★★★★★
()
Ответ на: комментарий от TDrive

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

DRVTiny ★★★★★
()
Ответ на: комментарий от TDrive

Речь как бы не о разработчиках (внезапно, фонде под крылышком у государства) а о заказчиках. Ну и да, Amoeba разрабатывалась для использования в госструктурах США. МинОбороны - это частный случай госструктуры.

DRVTiny ★★★★★
()
Ответ на: комментарий от DRVTiny

И по этому решил слить тред в политоту? Хз где логика...

TDrive ★★★★★
()

TL;DR : да, это мертворождённый язык.

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

Совместимость похерена, скорость медленнее на порядки, за каким-то хеpом притащили жабью jvm, plain-типы заменили на модное ООП, добавили ЕЩЁ БОЛЬШЕ операторов, в том числе откровенно специфических, типа итерации по двум массивам сразу.

Сообщество закономерно ох$%ло и пошло дальше пилить 5ю ветку.

anonymous
()

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

vtVitus ★★★★★
()
Последнее исправление: vtVitus (всего исправлений: 1)
Ответ на: комментарий от vtVitus

язык очень сильно оторван от реальных потребностей

Можно какой-то пример, в чём именно язык Perl6 оторван от потребностей, а какой-нибудь TypeScript - не оторван? Что там оторванного-то? Все обычные конструкции на месте, заменены на ООП-подобные многие специфические конструкции из Perl5, за который его не любили люди с ограниченным словарным запасом и прочими типичными для пихтон-программеров проблемами. Куча новых фич появилась, включая полноценное распараллеливание потоков (ибо работа поверх VM это позволяет) и конечно promises, заменившие несколько более понятный и привычный, но всё-таки сторонний AnyEvent.

Да, производительность пока низкая, но вроде пилят. То, что приложение загружается долго - в любом реальном продуктиве не играет никакой роли, лишь бы работало быстро. Наиболее популярные в энтерпрайзе Java-приложения стартуют иногда вообще в течение минуты - и никто при этом не говорит, что Java нужно выкинуть на помойку.

Основная VM для Perl6 - это MoarVM, а не JVM, и далеко не факт, что JVM когда-то станет основной.

Относительно совместимости - просто глупость: мало того, что есть режим полной совместимости с Perl5 (где такой режим в Пихтон-3?), так ещё и как всегда, как это было и в Perl5 (Source Filter'ы), на базе Perl6 легко писать вообще на любом языке - фактически Perl6-интерпретатор может хоть BASH выполнять, внутри себя преобразуя код на BASH в код на Perl. Именно так и работает режим совместимости с Perl5.

В общем, прежде, чем писать им делать выводы, почитайте хоть что-то о Perl. Я же осилил статьи по мерзкому г*ну Пихтон.

DRVTiny ★★★★★
()
Ответ на: комментарий от TDrive

Кстати, интересно, что на древнем сайте Amoeba предлагают совсем не Python в качестве языка программирования...

DRVTiny ★★★★★
()
Ответ на: комментарий от DRVTiny

Ну, не требуй многого от людей. По своему опыту, могу сказать, что, чтоб любить перл нужно быть немножко упоротым. Или хакером. Или упоротым хакером. Нормальным людям перл не нужен. Ни 6-й, ни 5-й. Ни свобода выражения мыслей, потому что большая ответственность и нету фана.

Deleted
()
Ответ на: комментарий от Deleted

Perl очень подходит всем людям, у которых хотя бы один из родителей - филолог. Мне в этом отношении повезло, поэтому я получаю удовольствие от программирования на Perl. Правда, у такой наследственности есть и свои минусы: например, мне физически неприятно читать любой безграмотный текст.

DRVTiny ★★★★★
()
Ответ на: комментарий от DRVTiny

Хороший код на perl — это еще меньший объем кода, чем и без того малый объем всего Perl-кода в целом. Про соотношение судить не берусь, но скажу что и объемные проекты кишат wtf-кодом. А если кто-то писал один из этих проектов попутно, изучая язык, или «для себя», то с годами, в коде (например gmusicbrowser) сам чёрт ногу сломит.

В конечном счете, разобраться новичку в этом без пол-литра тяжко, а программе нужна поддержка, чтоб оставались и прибывали юзеры, и Perl программисты были нужны (тоже прибывали и оставались). Потому, что из количества смогущих разобрать wtf-perl-код вычесть желающих сделать это — получим очень небольшое количество людей, способных изменить что-то рынке программистов для Perl.

Из костяка Perl-хакеров образуется довольно годный код, но его недостаточно, чтоб сделать Perl мэйнстримом.

Есть надежда, что новички вырастут из быдлокода/хелловордов и внесут свою лепту в сообщество Perl. А опытные пожертвуют свои силы на рефакторинг/рестайлинг своих начатых проектов, чем помогут невидавшим Perl, новичкам и опытным, всем желающим поддержать программу.

Вот так, идя навстречу друг другу, Perl, все больше перестанет быть Dead.

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от DRVTiny

мне физически неприятно читать любой безграмотный текст

Пихтон Пихтон Пихтон

То ли дело его писать! Не говоря уж о технической грамотности, да хотя бы элементарном кругозоре. Зато запятые стоят, ага.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.