Доступен релиз мультипарадигмального высокоуровневого языка программирования Haxe 4.0,...Подробнее: https://www.opennet.me/opennews/art.shtml?num=51763
В названии не хватает буквы "р".
Это о многом говорит.
> Это о многом говорит.Но в основном о комментаторе.
Факс или нахер?)))
Второе.
а что такое хаксеп?
Светлый путь
Хахе :)
И какова же (зявленная) целевая сфера применения? Уэб, ембеддед, аппликатион девелопмент?
насколько я знаю на нёи всякую индюшатину активно пилят
https://haxe.org/use-cases/
https://haxe.org/use-cases/
В основном веб-сервисы и геймдев (Northgard, Dead Cells). Более строгая система типов в сравнении с надстройками вроде TypeScript, спека без жсных undefined, ===, прототипов и тд.
> ncannasse
> Haxe creator, co-founder at Shiro Games (Northgard, Evoland)Видимо большей частью хрень, которую сами написали и сами используют для своих игр
Но по крайней мере да, то, что они это успешно заюзали под игры - уже что-то...
Просто не у всех есть желание и ресурсы пеариться. Язык на самом деле годный. По сути TypeScript для не-хипсторов: больше для реального применения, чем для возюканья с описанием типов (от которых в TS порой глаза на лоб лезут и появляются мысли, что JS-программист это приговор - настолько упороться могут только они и переход на TS ничего в этом не меняет).
Так и не понял, как там делать проекты, чтобы зависимости сами устанавливались, как в pip, maven и т.п. Какая-то путаница там со сборкой проектов и package-менеджерами.
Если игры можно писать - остальное подтянется
>интерполяция строк ('My name is $name'),Кто придумал для этого использовать одинарные кавычки вместо обратных, как в JS?
Haxe:1) двойные кавычки — без интерполяции
2) одинарные кавычки — интерполяцияJS:
1) двойные кавычки — без интерполяции
2) одинарные кавычки — ВНЕЗАПНО тоже без интерполяции, делают ровно ТО ЖЕ, что и двойные
3) обратные кавычки — интерполяция (пришлось заюзать в спеках ТРЕТИЙ символ, потому что первые ДВА символа оказались заняты для ОДНОГО и того же)
А с чего вы решили что они должны на JS ориентироваться?JS: `foo${n}bar`
c#: $"Hello, {name}! Today is {date.DayOfWeek}, it's {date:HH:mm} now."
kotlin: "My Age Is: $age"
бидон:
a = 12
b = 3
print(f'12 multiply 3 is {a * b}.')
сорян, что немного не туда ответил, но считаю, что есть языки программирования, а есть js и php
И на чем же пилит "элита програмистов", и при этом достигнув такой же (ну или хотя бы где-то около) популярности?Вот при том, что я вообщее очень далеко от JS & PHP чтоб это защищать, мне всегда хочется поглядеть на труды этих "мачо", пишущих "шедевры" на каких то "супер языках" без ошибок и не ставящих не во что другие языки, которые массово известны и используются широко во всем мире. Гугл - дурак, мордокнига - дура, а вот у Анона с опеннета, - супер секретное орудие... подождите еще чуток и увидите АнонБук или Анонугл...
Дет садовская группа, меряющаяся пипками...
Есть такое понятие - рассовая дискриминация, и тот кто уподобляется вере в то, что у него одного голубая кровь, как показывает история - оказывается в глубокой клоаке, другие же, наоборот, поверив в diversity, достигают реальных высот...
Каждый раз, господа, "разьежающие здесь на неведомых супер-языках" просто публично обьявляют себя недоучками, игнорирущие другие инструменты, демонстрирующие что "шмогли" одолеть один какой-то язык и теперь кичаться его знанием, в то время как другие применяют разные инструменты по назначению, позволяющие в определенных областях двигать прогрес вперед значительно быстрее и удобнее нежели замкнуться на определенном языке и считать себя супер звездой.
Я не защищаю массу идиотов, пришедших в изобилии в веб мир и строгающих откровенное дерьмо, чем бросают тень дебилизма на используемые ими языки, но нормальный то человек должен понимать, что молоток в руках обезьяны - это оружие, в то время как у других - мощный и удобный инструмент и что проблема не в молотке, а в тех кто его использует. Я в свое время навидался "элиту" пишущих на С в строчку через ; и массой goto при этом мнящих себя не достигаемой уникальностью... и работающие теперь в подсобках.
> но нормальный то человек должен понимать, что молоток в руках обезьяны
> - это оружие, в то время как у других - мощный
> и удобный инструмент и что проблема не в молотке, а в
> тех кто его использует.если молоток надо постоянно приматывать проволокой и придерживать, но он всё равно норовит тебе свалиться на ногу, или если молоток какой-то песочный или пластилиновый или просто резиновый - то что надо говорить?
> если молоток надо постоянно приматывать проволокой и придерживать, но он всё равно
> норовит тебе свалиться на ногу, или если молоток какой-то песочный или
> пластилиновый или просто резиновый - то что надо говорить?Вы знаете для веба более лучшие инструменты и людей умеющих за разумную плату делать то же что JS & PHP?
Почему то Гугло карты работающие на JS работают, у вас же тот же инструмент должен вам падать на ногу... может просто вы его не умеете танцевать ?
Никто не знает.. потому что их просто нет..
JS - говноязык, накаченный стероидами.
Есть попытки использовать хорошие языки в виде GWT или Bridge.NET.И JS - это не молоток, это кусок грязного кирпича, им тоже можно гвоздь забить,
Но может раскрошиться, может рука соскочить, шляпка будет торчать или прибиваемый материал пострадает - корочек кусок легаси говна, который давно себя изжил.
GWT? Можно в принципе не продолжать, кто с этим непотребством дело имел - те в курсе, остальные не поймут.
> GWT? Можно в принципе не продолжать, кто с этим непотребством дело имел
> - те в курсе, остальные не поймут.От этого Java не стало таким же убожеством как JS.
Да и бридж весьма неплох, смотрите на C# тогда.
> или просто резиновыйНу, любители странных аналогий могут конечно и обычным стальным молотком (благо, есть резиновые насадки) стучать по плитке, ламинату, дереву, черепице, тонкой жести и т.д – но резиновый, обычно, все же удобнее.
>> или просто резиновый
> Ну, любители странных аналогий могут конечно и обычным стальным молотком (благо, есть
> резиновые насадки) стучать по плитке, ламинату, дереву, черепице, тонкой жести и
> т.д – но резиновый, обычно, все же удобнее.вы описываете киянку, а не молоток
и когда у вас молоток превращается в киянку - это плохой молоток
> вы описываете киянку, а не молоток
> и когда у вас молоток превращается в киянку - это плохой молотокХм, а я думал, что это просто разновидность молотка
"КИЯ́НКА -и; мн. род. -нок, дат. -нкам; ж. Деревянный молоток, употребляемый при ручной сборке столярных изделий.
Большой толковый словарь русского языка. - 1-е изд-е: СПб.: Норинт С. А. Кузнецов. 1998"(и уж точно вы не захотите бить по тротуарной плитке киянкой - для этого берут тяжелый стальной молоток с короткой ручкой и большой, толстой, резиновой насадкой)
> другие же, наоборот, поверив в diversity, достигают реальных высот...по-подробнее с этого места, пожалуйста. кто, где и особенно про реальные высоты.
> по-подробнее с этого места, пожалуйста. кто, где и особенно про реальные высоты.Если вы собираетесь всю жизнь кодить только на любимом языке до старости и у вас при этом есть работодатели готовые платить за это пожизненно, то я за вас искренее рад (Кобол? C? C++? Только держите в уме, что молодежь дешевле и быстрей соображает в силу молодости и "жесткий" капиталист выберет выгоду при случае) Если же вы продвигаетесь вверх, то вы руководите уже проектом(и) в которых применяются разные технологии и если вы не пробовали и не знаете этих технологий - то вы однозначно позади тех, кто набирает бригады специалистов с нужным профилем понимая внутреннюю специфику языков/технологий. На современном рынке, если вы хотите удержаться на плаву и работать не только "за идею", надо делать быстрее и лучшее других. Если я наберу одних ассемблерщиков и дам им веб проект, ну вы поняли... Это то, что я имел ввиду по поводу "высот"... а точнее это просто так, как везде в большинстве своем продвигаются люди по жизни, или выше или если повезет, то всю жизнь с одним любимым языком (но таких я знаю единицы и то они как правило люди не замкнувшие на одном и том же), ну или деградация...
Массой goto... ну че сообщиш торвалдсу что его код уг?
> Массой goto... ну че сообщиш торвалдсу что его код уг?Я не против goto, сам его пользую, т.к. в критических секциях это намного эффективней чем выкручиваться с оверхедами через "правильную" реализацию.
Я говорил, что видел людей, которые на полном серьезе писали АРМ ГУИ (под дос) для электростанций, что то типа:
printf("%s\n","someshit");L1:printf("%s","-------");if(i++<x) {goto L1;}else{goto L2;}; other_shit();
именно так, в одну строчку и были гордые как индюки что они пишут на С-ях...
С того, что заевляется, что Haxe - реализация ECMAScript.
> С того, что заевляется, что Haxe - реализация ECMAScript.Где и кем заёвляется? Анонимом?
https://haxe.org/documentation/introduction/language-introdu...
> The Haxe Programming Language was designed to be simple yet powerful. Its syntax largely follows the ECMAScript standard, but deviates where necessary.
Вот-тут - absolutely unnecessary.
>одинарные кавычки — ВНЕЗАПНО тоже без интерполяции, делают ровно ТО ЖЕ, что и двойныеНет, не ровно. В двойных не надо одинарные эскейпить. В одинарных не надо эскейпрть двойные.
Нанотехнологии
Что сказать-то хотел?
Прямо как в баше.
Не, в баше же двойные кавычки с интерполяцией, а одинарные без
> 1) двойные кавычки — без интерполяции
> 2) одинарные кавычки — ВНЕЗАПНО тоже без интерполяции, делают ровно ТО ЖЕ, что и двойныеТак известно почему так. Потому что некоторые в HTML-е юзают одинарные, а кто-то двойные. Здесь ' или " равносильны. Вот тебе один кейс, почему так. Не вижу причин для паники
>Потому что некоторые в HTML-е юзают одинарные, а кто-то двойные.А некоторые и те и другие '"' или "'".
> Haxe:
>
> 1) двойные кавычки — без интерполяции
> 2) одинарные кавычки — интерполяцияТо есть ровно наоборот по сравнению с shell, perl, ruby, groovy, php и ещё кучей ЯП? Потрясающее решение!
> поддерживается трансляция в С++
> имеет простую интеграцию с CМожет, сразу на C/C++ писать?
В том числе и веб на Wt.
Да нет никаких проблем. Делаешь импорт себе APR и начинаешь использовать Memory Pool и Reference count и все отлично. А зачем тащить отдельно какой-то набор библиотек да еще и написанных так себе мне вот не совсем понятно.
>> поддерживается трансляция в С++
>> имеет простую интеграцию с C
> Может, сразу на C/C++ писать?Может, лучше не быть ламером и писать сразу опкоды?
Да
Чисто академическая ценность?
Какой смысл транслировать в C#, если можно в il код?
Не разбираюсь, но из минусов: нельзя будет делать вставки на шарпе и работать код будет немного медленее без всех оптимизаций, что дает C# компиль. А так, скорее нет смысла все перепиливать для подобного таргета.
И какие программы на этом есть в линуксовых репах?
Двадцать лет читаю OpenNet.
Это занятие уже могло бы детей заводить.
В 2019 решил завести аккаунт что впервые что то написать.С каждым годом сообщество все больше превращается в стадо безмозглых упырей с одной извилиной.
Хаем все почем зря хотя сами ни хрена не понимаем.
JS говно, PHP говно, С++ говно, новый язык программирования(технология) говно.
Зачем конструктивная критика если любой писюн знает волшебное слово!Если бы весь мир был бы как текущее сообщество, с таким развитием мы бы до сих пор с палками бегали по лесам.
Благо не все такие, но адекватные люди просто тонут в море дураков.Если вы не писали на языке или не использовали технологию в течении хотя бы пяти лет просто захлопните варежку.
Вы не понимаете о чем говорите!
Если на кажжу технологию и язвк тратить по 5 лет, то жизни не хватит на все ваши новогомнопридумки.
Это никак не мешает захлопнуть варежку.
> Если на кажжу технологию и язвк тратить по 5 лет, то жизни
> не хватит на все ваши новогомнопридумки.А как вы хотели потыкать пальцем в С++ и кричать дерьмо, дерьмо там утечки памяти?
А ещё он такой сложный как же жить.
На PHP говно-сайты я его не знаю, но он дерьмо.
А то что PHP самый быстрый скриптовый язык, с наиболее полной поддержкой объектно ориентированного программирования программирования среди всех скриптовых языков.
Абстрактные классы, Трейты, Анонимные классы вы это видели в Python или Ruby, Perl ..?
Почему столько CRM на PHP легко писать многоуровневые абстракции.
JS был создан за 10 дней дерьмо, дерьмо.
Он такой кривой там ничего нет.
Чего там нет ?
Уже лет 5 есть классы и наследования, генераторы и промисы для control flow.
В последних итерация появились async/await, стало жить ещё проще для тех кто боится асинхронности.
Хочешь функциональное программирование, хочешь ООП.
С помощью Babel компилятора будет столько сахара жить станет очень сладко.
Хочешь статическую типизацию Flow, хочешь больше возможностей TypeScript и возможностей станет как в C#.Минусы есть везде, но как можно говорить о них не понимая.
- Твой мерседес говно
- А почему ?
- Мне говорили что он говно, да я и только на пежо ездить умею!
>А то что PHP самый быстрый скриптовый язык, с наиболее полной поддержкой объектно ориентированного программирования программирования среди всех скриптовых языков.Абстрактные классы, Трейты, Анонимные классы вы это видели в Python или Ruby, Perl ..?
Поспорю. ООП в Python/Ruby более полный и универсальный, вплоть до метаклассов. И CRM на них получается лучше, чем на PHP. Но расплачиваться за это приходится скоростью. Так что тяжело сказать что лучше.
>JS был создан за 10 дней дерьмо, дерьмо.
Так даже шутка про "новый фреймворк в вебе каждый день" уже давно не актуальна: стек стабилизировался. Но до местных не доходит.
>>А то что PHP самый быстрый скриптовый язык, с наиболее полной поддержкой объектно ориентированного программирования программирования среди всех скриптовых языков.
> Абстрактные классы, Трейты, Анонимные классы вы это видели в Python или Ruby,
> Perl ..?
> Поспорю. ООП в Python/Ruby более полный и универсальный, вплоть до метаклассов. И
> CRM на них получается лучше, чем на PHP. Но расплачиваться за
> это приходится скоростью. Так что тяжело сказать что лучше.
>>JS был создан за 10 дней дерьмо, дерьмо.
> Так даже шутка про "новый фреймворк в вебе каждый день" уже давно
> не актуальна: стек стабилизировался. Но до местных не доходит.Что тут спорить вы никогда не напишите
В Python отсутствуют абстрактные классы и интерфейсы.
В Ruby аналогично.
Можно расширить модулями и там и там(Ryby Gem interface, Python ABC, Zope interface).
Но из коробки нет и не предполагается.
Как и поддержки в сторонних пакетов.
О каком полном ООП вы говорите когда нарушается первый же основополагающий принцип ООП абстракция данных ?В C++ нет мета классов(собираются вводить) и назвать его не ООП языком нельзя.
В Java они есть но в урезанном варианте, а это язык с наиболее полной моделью ООП.
Мета классы эту проблема не решат.Python и Ruby прекрасные минималистичные языки программирования.
Но на них просто нельзя без танцев с бубном писать сложные многоуровневые абстракции.
Попробуйте реализовать паттерн Bridge на чистом Python удобно будет ))
Отделить абстракцию от реализации в языке где нет абстракций.
> В Python отсутствуют абстрактные классы и интерфейсы.Python ABC, начиная с 2.6.
https://docs.python.org/2/library/abc.html
> This module provides the infrastructure for defining abstract base classes (ABCs) in Python, as outlined in PEP 3119;
> ABCs that can be used to test whether a class or instance provides a particular interface, for example, if it is hashable or if it is a mapping..
> Но из коробки нет и не предполагается.Т.е. нужность "import abc" == "из коробки нема" o_O?
>> В Python отсутствуют абстрактные классы и интерфейсы.
> Python ABC, начиная с 2.6.
> https://docs.python.org/2/library/abc.html
>> This module provides the infrastructure for defining abstract base classes (ABCs) in Python, as outlined in PEP 3119;
>> ABCs that can be used to test whether a class or instance provides a particular interface, for example, if it is hashable or if it is a mapping.
> .
>> Но из коробки нет и не предполагается.
> Т.е. нужность "import abc" == "из коробки нема" o_O?Читать между строк это талант.
А прочесть комментарий внимательно религии не позволяет ?
import abc нужен в основном для тех же странных людей, что и functools. Оставляем часть методов нерелизованными -- ура, у нас есть абстрактный класс. Можно кидать NotImplementedError, чтобы точно никто не сделал объект.
>В Python отсутствуют абстрактные классы и интерфейсы.Чойта нет? Всё есть. Ты ещё скажи, что в C++ нет интерфейсов.
Это не проблема языка что для кого-то названия важнее концепций.
>Попробуйте реализовать паттерн Bridge на чистом Python удобно будет
>Отделить абстракцию от реализации в языке где нет абстракций.В Python/Ruby нет абстракций? Да ты ж наркоман. Ты же вообще на них не писал, да? Тогда к чему был тот опус в начале?
Для тех кто в танке!Цитирую себя же <<<< В Python отсутствуют абстрактные классы и интерфейсы.
В Ruby аналогично.
Можно расширить модулями и там и там(Ryby Gem interface, Python ABC, Zope interface). >>>>Прочти ---->>
http://pythonicway.com/education/python-oop-themes/33-python...
>Для тех кто в танке!Ладно, я понял, что ты можешь написать php-скрипт на абсолютно любом ЯП. Всё-таки местные были правы, когда издевались над php.
Если бы ты был поумнее и помнил что такое абстрактный класс, то вопроса "как реализовать" возникать не должно. abc -- это не больше чем сахар для дополнительных проверок который довольно редко встречается в природе.
Вопрос не в том как реализовать, а в том что вообще надо реализовывать то что должно быть в стандарте.В остальном спасибо за поучение о великий гуру!
Буду поумнее(тех кто в танке).
>О каком полном ООП вы говоритеТвоё ООП - моё кунг-фу, китайская мудрость.
Ой я и не говорил что они говно, но вы там сами своим ооп обмазывайтесь
> Если на кажжу технологию и язвк тратить по 5 лет, то жизни не хватит на все ваши новогомнопридумки.И чё с того? Прочитать все книги которые были написаны тоже не удастся, значит ли это, что книги -- гoвнo?
Так я так понял опеннетовцы копрофилы, я ничего про говно не говорил
Если я перефразирую, ты ответишь на вопрос?
Всё очень просто: не нужно -- не учи.
За это тут палками побьют и камнями закидают
> Хаем все почем зря хотя сами ни хрена не понимаем.
> JS говно, PHP говно, С++ говно, новый язык программирования(технология) говно.
> Если вы не писали на языке или не использовали технологию в течении
> хотя бы пяти лет просто захлопните варежку.
> Вы не понимаете о чем говорите!я использовал
js - говно и C++ - говно
php и python - говно из-за динамической типизации и отступов
немного богомерзкого C++ для примера https://habr.com/ru/post/472780/
> Зачем конструктивная критика если любой писюн знает волшебное слово!тут видимо должна быть конструктивная похвальба вашими устами этим языкам? ну раз уж вы такой пост осилили и даже зарегались
зы: вы же знаете про наличие кнопки "сообщить модератору" под каждым пустым и неаргументированным комментом?
> вы же знаете про наличие кнопки "сообщить модератору" под каждым пустым и неаргументированным комментом?Нельзя просто взять и удалить 90% комментариев.
Можно, можно. Мало того, в соседней новости про 32-битные PV примерно так только что и произошло.2 ogmy: ну напишите Максиму да предложите помочь с модерированием форума -- только имейте в виду, что так жить неудобней: часть вот тех удобрений немедленно будет перенаправлена лично на Вас вне зависимости от.
Не переживай, тебя не обделят.
>> вы же знаете про наличие кнопки "сообщить модератору" под каждым пустым и неаргументированным комментом?
> Нельзя просто взять и удалить 90% комментариев.можно
и таки не 90% а максимум 50%
>[оверквотинг удален]
>> Вы не понимаете о чем говорите!
> я использовал
> js - говно и C++ - говно
> php и python - говно из-за динамической типизации и отступов
> немного богомерзкого C++ для примера https://habr.com/ru/post/472780/
>> Зачем конструктивная критика если любой писюн знает волшебное слово!
> тут видимо должна быть конструктивная похвальба вашими устами этим языкам? ну раз
> уж вы такой пост осилили и даже зарегались
> зы: вы же знаете про наличие кнопки "сообщить модератору" под каждым пустым
> и неаргументированным комментом?зы: вы же знаете про наличие кнопки "сообщить модератору" под каждым пустым и неаргументированным комментом?
Это скорее к вам относится аргументация нулевая!
В принципе, он прав, наверное любой кто всерьёз писал на любом из этих языков знает, что они овно и почему. Не вижу особого негатива как раз, только вот это нытьё и немного клоунады как у цитируемого тут товарища. Так-то и на angelscript вполне можно писать успешное коммерческое ПО, не вижу никаких проблем с этим. А сабж скорее всего из той же оперы.
надо просто ввести критерий говна.
> habr.comВфы бы еще на вконтакте сослались. Тот случай, когда одно слово перечеркивает смысл.
>> habr.com
> Вфы бы еще на вконтакте сослались. Тот случай, когда одно слово перечеркивает смысл.эта статья разбор примера на c++ с разжовыванием
что вас не устраивает?да, хабр уже не торт, но явно не в этой статье
Предлагаю тебе воспользоваться своим же советом, например.
>JS говно, PHP говно, С++ говноНо Котлин, c# и rust не говно.
они еще только вылезли с пеленок. погоди 2 годков . увидишь как из них полное г сделают. хотя раст уже превращается. и нефиг инструменты обгаживать. сделали сначала плюсы, а потом взялись гадить-добавлять так что из языка превратился в хрен знает что. раст кстати на том же пути. ну нельзя охватить все на свете. инструмент должен быть инструментом, а не комбайном. пусть будет 5-6 языков , но со своей спецификой применения. а то что сейчас делают... плюсам от того , что их так разнесло лучше не стало. наоборот .
> сделали сначала плюсы, а потом взялись гадить-добавлять так что из языка превратился в хрен знает чтоНикто не мешает пользоваться исключительно первым изданием Страуструпа.
> c# ... не говно.Не могу согласиться с уважаемым коллегой.
>> c# ... не говно.
> Не могу согласиться с уважаемым коллегой.а почему?
Потому что .NET и MS.
Это всё губительное влияние плохих ребят с ЛОРа...
Т.е. 20-лет молчал не высказывал своего единственно правильного мнения, из-за того что ты молчал комменты заполонили школьные анонимы и виноваты в этом конечно же анонимы.Не верю (с). или это очередной наброс стаканчика или какого-то школьника.
Жаль, что свой трактат написал наверху, не дойдя до вашего...
Вот только из-за таких адекватных людей хочется приходить на опеннет, но статисика к сожалению говорит о том что сбежавших с каменного века здесь еще навалом.Пытаешься поделиться на халяву опытом, за который на работе платят(и очень не плохо), - так еще в "благодарность" обольют грязью...
Грустно...
У меня стойкое ощущение, что вы оба обои пришли клоунаду навести. Вот прямо стойкое такое, наверное я уже привык к подобным. Кто-то же ведётся до сих пор, иначе бы не писали.
> У меня стойкое ощущение, что вы оба обои пришли клоунаду навести.Т.е. то, что написали мы - это клоунада, а те "супер элита" програмистов пишущих на волшебных и безошибочных языках и обсирающих все что не уложилось в их... так называемые "гениальные" головы - это нормальное __человеческое общение__ ?
> Вот прямо стойкое такое, наверное я уже привык к подобным. Кто-то же
> ведётся до сих пор, иначе бы не писали.Ведуться на что ? Попытаться сделать любое место чище - это за падло?
Здесь есть толковые люди с которыми интересно пообщаться и мне б лично не хотелось бы чтобы хамы гадили это место... Что посторишь - то пожнешь, а можно просто сидить и подсирать "по приколу"...
Да уже хотя бы просто читать новости без этого бреда в комментариях!По моему профессиональное сообщество созрело для создания ресурса с самой жесткой модерацией статей и комментариев.
Хочешь писать статьи и комментировать в определенном разделе, пройди тест на знание этой области.
А в самых сложных разделах и проверку модератором на подтверждение квалификации.
Контента будет мало, но он будет на вес золота как и сами люди создающие этот контент.А не разбираешься читай и учись молча!
Это вы уже совсем толстите. Идите на хабру с её рекламой или на лор с его неадекватными модераторами. Тамошняя аудитория вам будет гораздо ближе, это очевидно.А мне вот только на опеннете и помогали ответами по делу, мне кажется не в последнюю очередь это результат того, что нормальные люди будут скорее задерживаться на ресурсе со здоровой атмосферой и отстутствием произвола и фашистских политик (это когда новые правила выдумывают от скуки (и никому о них не сообщают, ими начинают оправдываться уже когда выдадут пермабан по айпи (что тоже противоречит правилам, зхаха)).
Присоединяюсь, цензура - это никогда не приводила в итоге к порядку, а наоборот плодила троллей. Хоть обстановка иногда создаваемая некоторыми индивидумами и напоминает дет.сад или пивнушку на отшибе, но цензура - это не выход.Имхо лучше:
"Дай человеку рыбу и накормишь его на три дня.
Научи человека ловить рыбу и он будет накормлен на всю его жизнь..."
Отличный пример синдрома вахтера!Поймите одну простую вещь - точка зрения, что есть одна Ваша правильная точка зрения ошибочна в корне. Если Вы с кем-то не согласны, то есть вероятность 50% как минимум, что Вы неправы, даже если Вы уверены в обратном.
Тот же Хабр это сайт для рекламщиков и вахтеров, которые точно уверены, что знают истину.
Если Вам не нравятся комментарии или заметки - не читайте их. Нет смысла реагировать на них подобным образом.
Касательно критики языков программирования, которая Вам не понравилась.
Во-первых не нужно воспринимать это так серьезно. Во-вторых кол-во языков, которые мы имеем говорит само за себя. Каждый автор или авторы нового языка по сути говорят, что все остальное ***ьмо. Иначе какой смысл было создавать очередной язык? Почему им не могут ответить тем же?Однако, если Вы уверены, что сообщество до чего-то созрело, то что именно мешает ВАМ создать такой сайт с самой жестокой модерацией на свете? - Если спрос действительно есть, то Ваше предложение найдет своего пользователя.
Спасибо за психологический анализ по комментариям!
У вам нобелевская по психологии ?С конструктивной критикой я всегда согласен.
И по многим технологиям и языкам сам знаю кучу минусов и недоработок.
Таким как отсутствие Generic в Go.
Это мешает, но от этого он не перестает быть прекрасным языков программирования. Плюсов все равно больше.Но с критиками уровня земля плоская и стоит на двух китах я никогда не буду согласен.
Это не означает что я буду писать каждому городскому сумасшедшему, но иногда высказываться я могу себе позволить.
Будут ли они обижатся или воспримут как это должно быть, моим личным мнением, меня мало интересует.По поводу проекта уже делаю.
Atreugo + FastHTTP на Frontend Vue.js, в качестве базы данных MariaDB + TokuDB.
Плюс фильтрация токсичных комментариев простенькой нейросетью на Keras+Tensorflow.
Все это на маленьком VDS KVM за пару тысяч рублей.
Этого мне хватит на много лет вперед, так как проект с очень большой долей вероятности будет никому кроме меня не нужен.Деньги меня не интересуют, профессия позволяет жить хорошо.
Может ещё через 20 лет будете читать статьи на << сайте с самой жестокой модерацией на свете>>))
Добавлю. Хотя я сам критиковал opennet за отстутствие проброса на https, но говоря объективно
во всей сети я не знаю ни одного!!! ресурса, который позволяет кому-угодно БЕЗ регистрации писать комментарии и который не превратился в помойку.Это к вопросу, что Вам пришлось регистрироваться, чтобы сюда писать...
А мог писать как Аноним.
Но решил что так будет лучше.
Совет, на анонимов болт забейте.
> Пытаешься поделиться на халяву опытом, за который на работе платят
> (и очень не плохо), - так еще в "благодарность" обольют грязью...Дайте-ка я скажу спасибо Вам, ему, Михрютке, persgray и ещё многим-многим здесь, ради которых до сих пор вижу смысл и комментарии смотреть, и тратить время жизни на комодерирование.
А что есть люди инфантильные, невоспитанные, неустроенные, да просто вот прямщас раздражённые -- ну... беда, но не катастрофа.
Опеннет это небольшой срез рунета. Обгадить что-то, вместо помощи обозвать нубом или жосче, это норма в рунете.
> JS говно, PHP говно, С++ говноэээ... а что тут НЕ ТАК???
Вопрос, зачем сабж если есть Rust?
На нем можно таргет в раст запилить
Rust слишком специфичный. А сабж -- это просто JS, только нормальный.
JS который генерирует cpp -> нативные бинарники.
Зачем куча спец-языков, когда есть супер-язык, из которого остальные генерятся =)
Годнота
использую для пэхэпэ
Таргет на перл бы запилилли ещё
> использую для пэхэпэвы прогаете на Haxe и компилите в php? можете рассказать почему компилите именно в php и как вообще изначально выбрали Haxe для разработки?
Я не тот Аноним, но предположу что он пишет на нормальном языке из сабжа, а транслирует в лапшичный пхп.
> Я не тот Аноним, но предположу что он пишет на нормальном языке
> из сабжа, а транслирует в лапшичный пхп.да, я так и думал
мне интересны причины выбора этого языка для исходников и php для цели исполненияпредполагаю что у них на php большое и переиспользуемое наследство
Тоже другой, но может кому будет интереснен недавний доклад по haxe/php, или слайды из описания ролика полистать:
https://youtu.be/IeXgTkh9NAs
Если кратко, то там общий код между php сервером и c#/js клиентами. Остальное перечисление фич языка и особенности реализации трансляции. Почти идентичная презентация на русском здесь:
https://youtu.be/K-37iSCV13o
дак потомучто php это популярный язык - для решения бизнес задач а следовательно зарабатывания денегсам пишешь на нормальном статически типизированном языке - а заказчику отдаешь результат в виде php кода
к тому же из haxe в js можно транслировать - и шарить некоторую бизнес логику
т е получется практически фулстек на haxe
> и как вообще изначально выбрали Haxe для разработки?когда были попытки найти бесплатный инструмент для програния под flash платформу на linux
а там еще появлялся типа adobe air, js и все дела
а там как раз появился таргет под php - ну и решил а что бы не попробовать
этот чудесный "один язык для всего"успел попрогать под flash, расширения на js под firefox (во времена ), всякую вебню транслируемую в Php
*расширения на js под firefox (во времена XUL)
offtop: смотрю исходники gcc 9.2 и не могу найти место кодогенерации.
Вопросы:
- gcc генерирует машинный код или он генерирует ассемблер который скармливает gas?
- если первое то где в исходниках gcc 9.2 место кодогенерации?
gimple нашёл?
Да, нашёл, спасибо. gimple я так понимаю строит IR, если так то где именно IR переводиться в машинный код?
У меня такое ощущение, что там из IR создаётся код на ассемблере и потом скармливается gas.
Исходники по адресу gcc/config/i386/gas.h и т.п. подобный файл намекают на это.
Код GIMPLE переводится в архитектурно-зависимый RTL. После пары десятков проходов он достаточно прямолинейно конвертируется в код для ассемблера, за вывод отвечают final.c и insn-output.c, генерируемый программой genoutput.c из архитектурно-зависимых определений в config/.
Читайте документацию: https://gcc.gnu.org/onlinedocs/gccint/RTL-passes.html
Т.е. как я в первом посте и сказал написал, gcc генерирует листинг ассемблера и скармливает его gas.
Можно было просто ответить - да, и не писать эту простыню.
Я лет десять не интересовался как работает gcc, и с тех пор я мог всё забыть и перепутать. Но насколько я помню, gcc генерировал промежуточный код, который затем скармливался бэкэнду. Примерно так, как это делает llvm сейчас, только у gcc'шного промежуточного кода вроде не существовало бинарного кодирования, при выводе он кодировался в ascii-представление по типу языка ассемблера. То есть, llvm ничего нового не сделал, он просто чуть больший акцент поставил на промежуточном представлении.Ну и собственно, если бы я пытался найти кодогенерацию в gcc, то я первым делом задался бы вопросом что именно я ищу. Потому что если мне интересны те места, где gcc выводит x86_64 или ARM инструкции, то это надо искать в бекэнде, а если мне интересно где gcc генерит промежуточное представление, то наверное надо начать с какого-нибудь фронтенда, там по-любому должны быть вызовы каких-нибудь функций gcc, не зависящих от фронтенда/бекенда, которые создают структуры данных, соответствующие промежуточному представлению. Даже более того, в этом случае я бы начал с чтения документации к gcc, потому что там должно быть что-то (может быть промежь опций компилятора), что позволяет получать это промежуточное представление в текстовом виде, и если найти код выводящий это промежуточное представление, то скорее всего там где-нибудь рядом будет код, создающий это промежуточное представление.
Комментарий большой, но по сути ни о чём и вот почему. Я спросил, где именно кодогенерация, чтобы вам было понятнее я просил где IR переводится в машинный код.
Про архитектуру компиляторов я прочитал не одну книжку и в курсе про части при построении компиляторов - front-end, optimizer, back-end.
> Я спросил, где именно кодогенерация, чтобы вам было понятнее я просил где IR переводится в машинный код.Разве из моего ответа не очевидно, что это не очевидно?
> Про архитектуру компиляторов я прочитал не одну книжку и в курсе про части при построении компиляторов - front-end, optimizer, back-end.
И это тоже.
Я не могу заглянуть в твою голову и увидеть там прочтённые тобой книжки. Я вижу только то, что ты написал. И я вполне могу представить себе человека, который не читал ни одной книжки, который хочет найти генерацию промежуточного кода (сам не понимая того), и который задаст вопрос слово-в-слово такой же, как ты это сделал.
>Я не могу заглянуть в твою голову и увидеть там прочтённые тобой книжки. Я вижу только то, что ты написал.Да потому-что это ипанный аноним, который для начала самого себя обозначить не может, а тот кто себя не обозначает, он никто и звать его никак. В падлу с такими разговор вести.
Для таких дебилов, как ты и тот кому ты отвечал в моей фразе - "gcc генерирует машинный код или он генерирует ассемблер который скармливает gas?" было специально использованно слово - __машинный__.
Только дебил мог рассказывать про генерацию IR на вопрос про генерацию машинного кода.
IR != машинный код.
> было специально использованно слово - __машинный__.И что с того? Из использования слово "машинный" каким-то образом вытекает, что ты читал много книжек о компиляции и знаешь про существование аббревиатуры IR? Расскажи мне как я должен был рассуждать, чтобы придти к такому выводу, я всегда готов учиться новому. Как из твоего вопроса вытекает, что ты не ошибаешься в том, что именно тебе нужно из-за непонимания архитектуры gcc? Какие именно буквы должны были навести меня на понимание этого?
Я использовал словосочетание машинный код ещё тогда, когда я не знал ничего про компиляторы, считал их инструментами для слабаков, и был уверен, что истинный программист должен писать на ассемблере со вставками машинного кода. Я не знал тогда про IR, а если бы узнал, то счёл бы это глупостью снижающей эффективность компиляции, стоящей на пути истинной оптимизации кода и безбожно жрущей процессорные такты. Что в твоём сообщении указывало на то, что ты не видишь мир так, как я видел его 20+ лет назад?
> Только дебил мог рассказывать про генерацию IR на вопрос про генерацию машинного кода.
Только дебил мог не понять моё объяснение моей ошибки с первой попытки и после этого продолжать лезть на рожон. Хотя, может я и здесь ошибаюсь, и всё же в твоём первом сообщении есть что-то, раскрывающее глубины твоих знаний, просто не все это видят и я в их числе?
>Какие именно буквы должны были навести меня на понимание этого?А чего еще с дебила взять, как не дебильно поставленный вопрос.
>Хотя, может я и здесь ошибаюсь, и всё же в твоём первом сообщении есть что-то, раскрывающее глубины твоих знаний
Есть что-то, и оно то, что он переобулся на лету из анонима в балабола. Забей на него, он неадекват в квадрате.
> Забей на него, он неадекват в квадрате.Не, это совершенно нормальная история для людей. Они произносят слова, вкладывая в них какой-то смысл, и считают что если они вложили этот смысл, значит это единственный смысл, который можно извлечь из слов.
Самое яркое проявление этого, это музыка, человек отбивает ритм мелодии, и он весь в иллюзии, что другим несложно угадать мелодию, которую он отбивает. Хотя другие в подавляющем большинстве случаев в глубоком недоумении. Этот эффект даже в эксперименте замеряли. Люди очень часто переоценивают объём информации, который им удаётся передать другим. И лечить это можно только обратной связью.
>Не, это совершенно нормальная история для людей.Для дебилов - да. И он проявил это во всей красе. Он задался вопросом, а получив ответ понял, что хер не равен пальцу, когда в самом вопросе он хер с пальцем и сравнивал.
>Самое яркое проявление этого, это музыка, человек отбивает ритм мелодии, и он весь в иллюзии, что другим несложно угадать мелодию, которую он отбивает.
Музыка - строгая закономерность, как и все в природе.
>Хотя другие в подавляющем большинстве случаев в глубоком недоумении.
Природа отдохнула, не каждому дано осознать или понять, а дебилам ни того, ни другого не дано, и это как вы заметили выше - нормальная история. Проявим великодушие и не будем щемить ущербных от природы дебилов, Бог в помощь, Мир Дому Вашему.
5.134, Olololo (?), 15:01, 28/10/2019Вот тут его неадекватность и проявилась. Сначала задал два взаимоисключающих вопроса, а потом утверждает, что он там всё правильно написал.
Haxe это как Nim только лучше. У Nim совсем убогая стандартная библиотека, куча ограничений, постоянные грабли с "а данному методу нужен временный объект для результата, по другому кодогенерацию мы не смогли".
зачем высокоуровневому языку выглядеть так страшно? В чем тогда профиты использования его вместо более низкоуровневых?Лучше бы какой нибудь питон с трансляцией во все подряд сделали
в haxe решили сделать мудрее - просто добавили трансляцию в python
чтобы ты мог писать на нормальном языке и транслировать в свой любимый язык
я писал на питоне с 2.4
думал офигенный язык даже пусть появлялись несовместимости с 2.6, 2.7 - я все равно терпел и писал код переносимым
но потом появилась третья не совместимая версия а потом еще и еще
и я в итоге психанул и ушел на php
почему они не воспользовались llvm?
там таргеты кодогенерации не для всего "трансляция в С++, HashLink/C, JavaScript, C#, Java, PHP, Python и Lua, а также компиляция в байт-код JVM, HashLink/JIT, Flash и Neko", но раз создали с нуля свои, то и в llvm создали бы
Когда Haxe зарождался (2005), LLVM еще плюшевый был.
Emscripten стал известен только в 2011 году, судя по Google Trends (не знаю, когда появился).
По сравнению с Go хороший язык.
Был у нас один чудик. 2012-й год. Хвалился Haxe. Умный такой. А по факту - был наркоманом. И еще любил переменные одной буквой называть. Разрабатывал он правда на JS/Node.JS. Видимо боялся, что его заменить могут, поэтому хотел сам разбираться в своем коде.
haxe это практически java только проще и с выводом типовхотя если нахерачить макросов и вставок js - да сложно разобратся будет
с другой стороны - на js можно еще больше лапши наделатьсам по себе язык не сможет ограничить програмиста - все решает культура и огранизация кода и стандарты принятые в компании
Какой язык лучше для кастомных DSL?То есть чтобы читалось почти как натуральный язык, но чтобы не нужно было писать свой парсер/транспилятор.
Я слышал народ юзал Scala, кастомер даже не знал что это язык программирования. Какие ещё есть варианты?
> чтобы читалось почти как натуральный языкAppleScript.
Да, это сарказм.
JavaScript каким он должен быть.
Как это я первые 3 релиза пропустил?!