The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Facebook развивает TransCoder для перевода кода с одного языка программирования на другой"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Facebook развивает TransCoder для перевода кода с одного языка программирования на другой"  +/
Сообщение от opennews (?), 06-Окт-20, 15:45 
Инженеры из Facebook опубликовали транскомпилятор TransCoder, использующий методы машинного обучения  для преобразование исходных текстов с одного высокоуровневого языка программирования на другой. В настоящее время предоставлена поддержка трансляции кода между языками Java, C++ и Python. Например, TransCoder позволяет преобразовать исходные тексты на Java в код на Python, а код на  Python в исходные тексты на Java. Наработки проекта реализуют на практике теоретические изыскания по созданию нейронной сети для эффективной ав томатической транскомпиляции кода и распространяются под лицензией Creative Commons Attribution-NonCommercial 4.0, разрешающей применение только для некоммерческих целей...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=53839

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

1. Сообщение от Козлетто (?), 06-Окт-20, 15:45   +4 +/
Вот бы весь JS и Rust он бы в С или ассемблер преобразовывал. Особенно актуально для КолибриОС
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #2, #7, #48, #67, #86

2. Сообщение от ИмяХ (?), 06-Окт-20, 15:49   +119 +/
Вот хорошо бы такую штуку, которая С++ переводит в машинный код.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #6, #10, #57, #142

3. Сообщение от Аноним (3), 06-Окт-20, 15:50   +17 +/
Вот уж где мракобесие и антинаучная ересь. Что уж сразу не с естественного языка в x86?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #5, #56, #87, #115, #130

4. Сообщение от Аноним (4), 06-Окт-20, 15:52   –3 +/
Даёшь ещё больше багов и гавнокодов.

И почему в пихтон а не в нормальны C?

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #8

5. Сообщение от Oxyd76 (?), 06-Окт-20, 15:53   +4 +/
Не подсказывайте! ;-)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #15

6. Сообщение от Аноним (6), 06-Окт-20, 15:54   –5 +/
Это называется "компилятор".
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

7. Сообщение от НяшМяш (ok), 06-Окт-20, 15:55   –3 +/
Хотя бы для JS - его как за баней уже.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1

8. Сообщение от Аноним (8), 06-Окт-20, 15:58   +1 +/
>И почему в пихтон а не в нормальны C?

Ты хотел сказать "в 1С"?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4 Ответы: #13

9. Сообщение от Аноним (8), 06-Окт-20, 15:59   +12 +/
Классное название! Очень инклюзивное! 🌈
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #50, #62, #85

10. Сообщение от InuYasha (??), 06-Окт-20, 15:59   +11 +/
:D :D :D
спасибо, улыбнул )
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

11. Сообщение от InuYasha (??), 06-Окт-20, 16:01   +2 +/
Двоякие чувства у меня по поводу этого проекта...
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #106

12. Сообщение от Аноним (13), 06-Окт-20, 16:01   –2 +/
А в питон потому что программисты facebook больше ни на что кроме питона не способны. Да и то, даже на питон уже не способны, поэтому транслятор чтобы спокойно тырить чужой код выдавая за свой.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #14, #39

13. Сообщение от Аноним (13), 06-Окт-20, 16:02   –1 +/
Обычно, нормальные люди говорят именно то что хотят сказать. И в додумывании нужды нет.
Ну конечно если ты не растоман.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8 Ответы: #32

14. Сообщение от НяшМяш (ok), 06-Окт-20, 16:02   +1 +/
Ну почему же, ещё у них есть много PHP.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12 Ответы: #17, #146

15. Сообщение от n00by (ok), 06-Окт-20, 16:04   +4 +/
Это уже есть.

Идиома -- язык программирования, производный от Plain English https://osmosianplainenglishprogramming.blog
...компилирует в x86 исполняемые файлы Windows
https://board.flatassembler.net/topic.php?t=21173

P.S. автор очередного философского камня закрыл исходники, смотреть поздно.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5

16. Сообщение от Аноним (17), 06-Окт-20, 16:08   –6 +/
> В настоящее время предоставлена поддержка трансляции кода между языками Java, C++ и Python

Т.е. из питона в c++ сможет?
Неужели счастье и питон можно будет закапать?

Раста ожидаемо нет, его и закапывать нету, мёртворожденный.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #20, #40

17. Сообщение от Аноним (17), 06-Окт-20, 16:08   +1 +/
А, ну это в корне меняет дело.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14

18. Сообщение от Аноним (18), 06-Окт-20, 16:17   +1 +/
> Python в C++

Супер! Надо будет portage транслировать и скомпилять в бинарь.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #22, #70, #145

19. Сообщение от Аноним (19), 06-Окт-20, 16:18   +2 +/
> использующий методы машинного обучения для преобразование исходных текстов с одного высокоуровневого языка программирования на другой

Даже поржать уже не хочется. Впрочем, оно конечно дешевле, чем юзать этих белковых)

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #68

20. Сообщение от Аноним (20), 06-Окт-20, 16:21   –3 +/
Зачем? Не каждый плючовый код сравним с си, да и сишечка тормоз ещё тот. Различия всё же несколько более фундаментальные. Подобный транслятор может быть полезен в качестве вспомогательной утилиты при переносе кода из прототипа, но не более.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16 Ответы: #21

21. Сообщение от Аноним (17), 06-Окт-20, 16:25   –1 +/
И что же не тормоз?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20 Ответы: #23

22. Сообщение от Аноним (22), 06-Окт-20, 16:28   +/
Попытайся портировать его в nuitka уже сегодня.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #35

23. Сообщение от Аноним (20), 06-Окт-20, 16:28   –4 +/
> И что же не тормоз?

Фортран и simd. Спасибо, что спросил.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21 Ответы: #26, #31

24. Сообщение от Аноним (26), 06-Окт-20, 16:41   +2 +/
30 лет назад уже были проекты по переводу кода на Фортране в эквивалентный код на С. Однако качество такого перевода не устроило. Поэтому проще оказалось переписать всё на С вручную.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #27, #108

25. Сообщение от Фанатик (?), 06-Окт-20, 16:41   +7 +/
Для гибкости не хватает слоя трансляции гомоморфного кода - ГомоКодера
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #28

26. Сообщение от Аноним (26), 06-Окт-20, 16:42   –1 +/
Ты ошибаешься. С быстрее Фортрана.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23 Ответы: #30

27. Сообщение от Аноним (26), 06-Окт-20, 16:45   +/
Добавление. "Всё" - это получилось примерно 100 тысяч строк кода на С.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #24

28. Сообщение от Фанатик (?), 06-Окт-20, 16:48   +1 +/
Также для тех, кто использует только два языка программирования потребуется слой кеширования - BiCoder
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25 Ответы: #42

29. Сообщение от Аноним12345 (?), 06-Окт-20, 16:48   +/
Интересно, как происходит перевод с чистого си на питон ?
Например, работа с указателями

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #52, #105

30. Сообщение от Аноним (20), 06-Окт-20, 16:56   +/
> Ты ошибаешься. С быстрее Фортрана.

У гцц может быть. Но вообще я видел получаемый ассемблер и он не в пользу си.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26 Ответы: #45

31. Сообщение от Аноним (17), 06-Окт-20, 16:58   –1 +/
Ооооо даааааааааааааа, конечно.
Поржал
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23 Ответы: #41

32. Сообщение от Michael Shigorinemail (ok), 06-Окт-20, 16:58   +5 +/
...и не нейронка ;-)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #13 Ответы: #93

33. Сообщение от Michael Shigorinemail (ok), 06-Окт-20, 17:00   +2 +/
Это уже даже не TDD, а какой-то HDD (hype driven devopsment).
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #97

34. Сообщение от Маняним (?), 06-Окт-20, 17:02   +/
На картинке даже не С++98, а С к которому зачем-то вместо printf-ов присобачили std::cout.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #38

35. Сообщение от Аноним (35), 06-Окт-20, 17:04   +/
nuitka мутноватая вещь... Хоть и транслирует, но всё равно она тащит за собой горы питонных библиотек. Надо что-то такое, что будет еще заменять библиотечные вызовы одного языка на вызовы другого.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #22 Ответы: #55

36. Сообщение от Аноним (-), 06-Окт-20, 17:07   –1 +/
А оно хруст научится делать в си ? Очень была бы неплохая тулза чтоб не тащить гигабайты в систему.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #72

38. Сообщение от Маняним (?), 06-Окт-20, 17:32   +2 +/
ЗЫ: Они бы показали как их чудо транскодер, вооружённый искусственным интелектом, переводит сам iostream хидер в джавапитон, - вот это была бы укатайка.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #34

39. Сообщение от заминированный тапок (ok), 06-Окт-20, 17:33   +/
зато если в примере убрать строчки с отдельными '{' и '}' то можно заметить, что код на C++ меньше, чем аналогичный код на питоне :-D
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12 Ответы: #79, #107

40. Сообщение от Аноним (40), 06-Окт-20, 17:34   +/
Капай, только не мимо
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16

41. Сообщение от Аноним (41), 06-Окт-20, 17:48   –1 +/
Возьми Intel Fortran Compiler и убедись! Но только не гнутый суррогат, на нем далеко не уедешь.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31 Ответы: #44, #80

42. Сообщение от Аноним (41), 06-Окт-20, 17:50   +/
А если ты pansexual или heteroflexible как быть? А если вообще nonbinary?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #28 Ответы: #123

44. Сообщение от ksjdjfgklsjdklgfj (?), 06-Окт-20, 17:58   +/
а если взять интелоидный сишный компилятор, и накидать в код всяких умных интринсик или прагм для разворачивания циклов?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41

45. Сообщение от Аноним (26), 06-Окт-20, 17:59   +1 +/
Мы делали анализ. На одних и тех же алгоритмах линейной алгебры и монте-карло. С быстрее. Хотя следует заметить, что равное качество кода на разных языках не получить.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #30

46. Сообщение от x0r (??), 06-Окт-20, 18:06   +/
Как запускать кто-нибудь понял?
Ответить | Правка | Наверх | Cообщить модератору

47. Сообщение от Аноним (47), 06-Окт-20, 18:07   –2 +/
Берешь и все gcc через javac перенаправляешь ищу сторонников кто подскажет машинка уже тут https://github.com/Griggorii/java-8-oracle_linux_modificatio...
Ответить | Правка | Наверх | Cообщить модератору

48. Сообщение от Anonim (??), 06-Окт-20, 18:08   –5 +/
А что не на фортран? Или на фортране Линус, идол опен нета не кодит?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1

49. Сообщение от Anonim (??), 06-Окт-20, 18:19   +/
Зачем транслятор из с++ в питон не очень понятно. Но вот из питона в с++ это прямо бомба
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #74

50. Сообщение от Стартаперсмузихлёб (?), 06-Окт-20, 18:19   +/
Это как трансниггер, только транскодер. Что же поделать, когда родился маркетологом-гуманитарием. А в душе я программист.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #60

51. Сообщение от ixrws (??), 06-Окт-20, 18:20   +4 +/
Полная хрень. Впрочем любой кто более-менее серьёзно либо ковырялся в компиляторах либо сталкивался с переписыванием кода с одного языка на другой - прекрасно понимает, что никакие нейросети тут не по могут. Если эта нейросеть будет иметь мозг, как хотя бы 100 спецов на разных языках и именно что будет думать, когда переписывает код, тогда да. Но до этого нынешние нейросети никогда, то есть ни завтра, ни послезавтра, ни через 100 лет не дорастут. Они работают не так просто, человека заменить не могут, опыт не накапливают, зарплату не получают, детей не растят.
В идеале, если выкинуть нахрен эти нейросети, можно сделать компилятор скажем из python в C++ и наоборот. Но вначале он будет настолько тупой(как сейчас и есть подобные компиляторы), что конвертированный код будет непригоден вообще ни для чего. А потом, если вложить туда мегабабки и миллионы часов разработки, можно будет добиться, чтобы более-менее стандартные варианты кода оно хоть как-то бы преобразовывало не создавая кучу ошибок и результатирующий код работал бы хотя бы не медленее оригинала. Добиться же нормального преобразования кода теоретически можно, но боюсь тут уже даже мегабабки не помогут, слишком много часов разработки.

Короче говоря, нормальный преобразователь должен не только тупо делать реализацию malloc в python чтобы там работал код, который из С конвертировали. А должен будет делать в зависимости от ситуации массивы, словари, объекты. И наоборот. А не как сейчас когда скомпиляют какой-нибудь python или perl в C, а в итоге код в лучшем случае также работает, а то и медленее. Про количество ошибок порождённых и говорить нечего.

А что до юнит тестов кода, то это невозможно технически. Если бы можно было с помощью анализаторов выловить все проблемы, то никто бы даже не рыпался выдумать всякие умные указатели, rust и прочие. Просто бы добавили поддержку анализаторов во все ide и разработчик бы не ошибался. Но как мы знаем, даже Microsoft Office не может даже пунктуацию то толком исправлять. Куда уж миру нормальных анализаторов.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #84, #102

52. Сообщение от Аноним (52), 06-Окт-20, 18:26   +/
а это вообще возможно? понимая, что указатель может ползать где угодно внутри структур и типов.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29

54. Сообщение от Аноним (54), 06-Окт-20, 18:55   +1 +/
столько комментов и не заметили очевидной недоработки.
последний кусок на яве обернут исключением, питоновский - нет. хотя делается это элементарно.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #65, #147

55. Сообщение от Андрей (??), 06-Окт-20, 18:55   +/
> Надо что-то такое, что будет еще заменять библиотечные вызовы одного языка на вызовы другого.

Действительно, ценность проекта получается на поиграться без их распознавания и замены на аналоги, имеющиеся в стандартной библиотеке языка, или популярной библиотеке (glib, logging, tracing...), или "самописные". И если проект с тестами, то ИИ мог бы спокойно поупражняться, до тех пор пока тесты будут пройдены. А вот если без тестов, тогда разработчики получили бы ещё один аргумент в пользу написания тестов.

Эх, питон/джава в Си или хотя бы в Си++ только с нативными зависимостями. Вот это было бы здорово.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #35

56. Сообщение от flkghdfgklh (?), 06-Окт-20, 19:01   +/
> не с естественного языка в x86?

Для этого есть программисты. Ты им на одном из человеческих языков задачу, а они на один из компьютерных переводят.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #71

57. Сообщение от Аноним (57), 06-Окт-20, 19:22   –6 +/
>Вот хорошо бы такую штуку, которая С++ переводит в машинный код.

Есть такая штука, называется g++.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

58. Сообщение от Аноним (57), 06-Окт-20, 19:25   –2 +/
Хочу исходные коды ядра Linux в C++ с использованием классов.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #61, #69, #83

59. Сообщение от user90 (?), 06-Окт-20, 19:35   +3 +/
Опачки! Как только я слышу про машинное обучение, то сразу понимаю, что попахивает лажей!)) Не отвергаю эту технологию, только вот применима она лишт для:
1) тупых рутинных операций,
2) с вероятностным результатом "ответа",
3) опирающихся на проработанный матаппарат.
И как это они хотят впендюрить сюда написание кода??
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #63, #73

60. Сообщение от анон (?), 06-Окт-20, 19:45   +5 +/
В высшем обществе уже за то, что спутал программиста или программистку с транскодером, лишают социальных благ.
Достаточно использовать абсолютно нейтральное предложение: "Как в новом апдейте программисты теперь чинят черный экран в гноме?", и ты гарантированно получаешь ответ, никак не связанный с линуксом и программированием, а про жендерные принадлежности, и почему такой анон, как я, должен пройти в биореактор.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #50 Ответы: #64, #143

61. Сообщение от Аноним (52), 06-Окт-20, 20:02   +/
Хочу забивать гвозди молотком розового цвета!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #58 Ответы: #100, #165

62. Сообщение от Денис (??), 06-Окт-20, 20:04   +2 +/
> Классное название! Очень инклюзивное!

Транскодер у меня ассоциируется с видеоконвертером, а транспондер со спутником.
Но у кого что болит..

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9

63. Сообщение от Аноним (52), 06-Окт-20, 20:05   +/
> Большую часть ошибок ... удаётся устранить через добавление ограничений ... что генерируемые функции будут синтаксически корректны.

Большую часть ошибок? А остальные?! Вот так вот... Даже синтаксически могут остаться ошибки, не говоря уж про семантику.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #59

64. Сообщение от Денис (??), 06-Окт-20, 20:10   –3 +/
Где вы таких находите? Я сколько ни общался на гитхабе, все адекватные.
В отличии от русских.
Исключение: швед Fredrik Mellbin, автор VapourSynth. Но, если его не облаивать, отвечает нормально.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #60 Ответы: #144, #153

65. Сообщение от Аноним84701 (ok), 06-Окт-20, 20:50   +2 +/
> столько комментов и не заметили очевидной недоработки.
> последний кусок на яве обернут исключением, питоновский - нет. хотя делается это элементарно.

Э-э,  объявлять "foo(bar) throws XYZException" для проброса исключения в питоне не нужно.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #54

66. Сообщение от Аноним (66), 06-Окт-20, 20:56   +1 +/
С ошибками переводит 1:1 или абы как?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #75

67. Сообщение от Аноним (67), 06-Окт-20, 21:12   –2 +/
JS послдние годы чет мало используют, а вот транслятор TS было бы неплохо иметь.
А то язык есть, а транслятора нет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #160, #161

68. Сообщение от Аноним (67), 06-Окт-20, 21:16   +/
Ну слушай сидят деньги идут сами собой с рекламы, а заниматься сколь нибудь серезным делом они не хотят, а хотят хайпа. Выпусти они новую версих хранилища на Rust все молча так пожмут усами и дальшей подут, а если в предложении будет что-то нашумевшее в сочетании с чем-то популярным, то они еще раз пропиарят свою уродливый продукт.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19

69. Сообщение от Аноним (67), 06-Окт-20, 21:21   +/
Проблема в том, что классы это дополнительная информация которой в оригинальном коде нет и этот транс кодер взять эту архитектуру ниоткуда не сможет, так что уровень этого инструмента пословный String Replace перевод. Короче Facebook опозорились и жалко что нет достаточно крутого издания или СМИ которые могли бы обьяснить что ханяты они херней. Вообще такое ощущение, что уровень СМИ он как бы идет с отставанием на 70 лет от актуального разития технологий.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #58 Ответы: #132, #137

70. Сообщение от Аноним (70), 06-Окт-20, 21:26   +1 +/
Надо вначале кому-то заморочиться и этот ТрансКодер транслировать в С++ из питона
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18

71. Сообщение от iLex (ok), 06-Окт-20, 21:35   +6 +/
Программисты нужны не для того, чтоб перевести задачу с естественного языка на язык программирования. А чтобы эту самую задачу сформулировать, предварительно вытряхнув хоть какую-то конкретику из менеджера, который и сам толком не знает, чего хочет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #56 Ответы: #94

72. Сообщение от анонн (ok), 06-Окт-20, 21:56   +1 +/
> А оно хруст научится делать в си ? Очень была бы неплохая тулза чтоб не тащить гигабайты в систему.

Интересно, откуда вы гигабайты берете, если "самодостаточный" пакет ржавчины (с собственной версией LLVM, доками которых там на 200 МiB и сорцами) весит

pkg rquery %n/%sh rust rust-nightly  
rust/695MiB
rust-nightly/494MiB

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #36 Ответы: #77, #81, #95, #135

73. Сообщение от Аноним (77), 06-Окт-20, 22:05   +/
Но квантовый компьютинг он тоже с вероятностным результатом ответа.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #59 Ответы: #76, #113

74. Сообщение от Аноним (77), 06-Окт-20, 22:09   +1 +/
Из Java в C++ тоже бомба. Тонны ынтерпрайзного кода скопились.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #49

75. Сообщение от Аноним (52), 06-Окт-20, 22:09   +/
> Большую часть ошибок ... удаётся устранить ... что генерируемые функции будут синтаксически корректны.

Получается, остаются даже синтаксические ошибки!

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #66

76. Сообщение от Аноним (52), 06-Окт-20, 22:12   +2 +/
Про квантовые компы: это то же самое, что моделировать кирпич кирпичом.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #73

77. Сообщение от Аноним (77), 06-Окт-20, 22:12   –1 +/
Ну даже пусть и не гигабайты. Но избавиться от лишних зависимостей тоже неплохо.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72

78. Сообщение от Аноним (78), 06-Окт-20, 22:17   –1 +/
Гвидо не тормозит.
Ответить | Правка | Наверх | Cообщить модератору

79. Сообщение от niger (??), 06-Окт-20, 22:19   +/
А это кого-то удивляет? Вроде и ежу понятно. Учитывая что скобки раставляют редакторы нынче сами.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #39

80. Сообщение от niger (??), 06-Окт-20, 22:25   +1 +/
Ага, вот взял и попробовал проприетарное Г. Лесом. Проприетарщина вообще не впилась.

Дабы не быть голословным:

Try It Now

Sample the suite for 30 days. You then have the option to convert to a paid license, which provides Priority Support for one year. If you're a student or classroom educator, you may qualify to receive a free full-featured suite.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41

81. Сообщение от Аноним (52), 06-Окт-20, 22:31   –2 +/
0.7 ГБ... И это только 1 установочный пакет компилятора. 0.2 ГБ - доки, это десятки тысяч страниц, в многотомных энциклопедиях и то меньше.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72 Ответы: #88

82. Сообщение от Аноним (85), 06-Окт-20, 22:38   +2 +/
>Исследователями предложена новая архитектура нейронной сети "Transformer"

Она не новая, она была предложена в 2017 году другими исследователями в работе Attention is all you need. Просто state of the art - лучшие нейросети на данный момент используют её.

Ответить | Правка | Наверх | Cообщить модератору

83. Сообщение от sukaslayer (?), 06-Окт-20, 22:39   +1 +/
хочу исходники ядра на питоне!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #58

84. Сообщение от Аноним (85), 06-Окт-20, 22:48   –1 +/
Не придирайся. Качество - дело наживное.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #51

85. Сообщение от Аноним (85), 06-Окт-20, 22:54   +/
Я знал, что опеннетовцы без этого не смогу. Поэтому в оригинале я написал заголовок вроде "Транс-программист переводит код между языками программирования. Но есть нюанс."
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9

86. Сообщение от Аноним (86), 06-Окт-20, 22:55   +/
>Вот бы весь ... Rust он бы в ... ассемблер преобразовывал.

есть такая программа, называется rustc

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #92

87. Сообщение от Ag (ok), 06-Окт-20, 23:12   –1 +/
КОБОЛ желаете-с? ;)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3

88. Сообщение от анонн (ok), 06-Окт-20, 23:16   +1 +/
> 0.7 ГБ... И это только 1 установочный пакет компилятора.

Выкинь сорцы и доки, будет 0.4 ГБ. Но никак не "гигабайты".
> 0.2 ГБ - доки, это десятки тысяч страниц, в многотомных энциклопедиях и то меньше.

И то ли дело с полгига qt5 доков?


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #81

89. Сообщение от Аноним (-), 07-Окт-20, 00:31   +/
Перевод будет плохой - иерархии исключений (выше про них уже вспоминали) в разных языках не совпадают. А значит - не ясно на каком именно catch-е в результирующем языке нужно будет "обрабатывать исключение". А это значит - что перевод будет не эквивалентный. Итого - для мелких и неважных поделий конечно сойдёт.
ЗЫ а ошибки исправлять оно сможет? ;-)
ЗЫЫ хмммм, а может подкинуть идею PVS Studio(они тут вроде публиковались)? пусть добавят кнопку "Fix it" для части своих диагностик
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #90

90. Сообщение от Аноним (-), 07-Окт-20, 00:38   +/
>> не ясно на каком именно catch-е в результирующем языке нужно будет "обрабатывать исключение"

не ясно не только ГДЕ его обрабатывать, но и КАК

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #89

91. Сообщение от Аноним (91), 07-Окт-20, 00:46   +2 +/
а слабо машкоды в с++ развернуть? ;)
Ответить | Правка | Наверх | Cообщить модератору

92. Сообщение от DerRoteBaron (ok), 07-Окт-20, 01:20   +1 +/
как бы так можно и в C преобразовать: для LLVM IR есть бэкенд, генерирующий код на C. Правда неэффективно, но все равно лучше, чем C2Rust
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #86

93. Сообщение от rshadow (ok), 07-Окт-20, 01:37   +1 +/
Ахахаха, балуетесь? Так вот откуда столько анонимов на сайте.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #32

94. Сообщение от flkghdfgklh (?), 07-Окт-20, 01:48   +1 +/
Задачу формулирует руководство через project manager'ов на человеческом языке, а программист ее переводит в готовое решение. Если программист формулирует задачу, то у тебя что-то в конторе не так
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #71 Ответы: #104, #120

95. Сообщение от Аноним (-), 07-Окт-20, 02:00   –3 +/
> Интересно, откуда вы гигабайты берете,

Похоже что хрустоводы даже не разу исходников не видили . Не говоря уже про их изучение.

Лишние гигабайты, которые вам не жалко - доплатите плиз или высылайте сразу железяки, ок ?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72

97. Сообщение от Аноним (-), 07-Окт-20, 02:10   –2 +/
ого, нам приоткрыли основной метод разработки альлинукс
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #33

99. Сообщение от Аноним (99), 07-Окт-20, 02:37   +2 +/
Благодаря этому сразу видно какой питон уродливый.
Ответить | Правка | Наверх | Cообщить модератору

100. Сообщение от Ordu (ok), 07-Окт-20, 03:08   +/
Тебе подсказать, где продаётся розовая краска, или чё?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #61

101. Сообщение от Аноним (101), 07-Окт-20, 03:45   +1 +/
На минуточку, в C++ по стандарту есть VLA?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #103, #124

102. Сообщение от Ordu (ok), 07-Окт-20, 04:02   +3 +/
> Полная хрень.

Прежде чем кидаться такими утверждениями о проделанной кем-то работе, стоит поинтересоваться тем, какие конкретно задачи автор решал, и насколько эти задачи актуальны. В новости есть ссылка на научную статью, а в научных статьях принятно об актуальности писать в абстракте (кратко) и во введении. Там же во введении всегда можно найти отсылки к related works, и узнать про то, как данное исследование/данная разработка вписывается в эти related works. И если бы ты открыл эту статью, то ты легко бы нашёл там следующее:

> Migrating an existing codebase to a modern or more efficient language like Java or C++ requires expertise in both the source and target languages, and is often costly. For instance, the Commonwealth Bank of Australia spent around $750 million and 5 years of work to convert its platform from COBOL to Java. Using a transcompiler and manually adjusting the output source code may be a faster and cheaper solution than rewriting the entire codebase from scratch. In natural language, recent advances in neural machine translation have been widely accepted, even among professional translators, who rely more and more on automated machine translation systems. A similar phenomenon could be observed in programming language translation in the future.

Это про востребованность решения. В области, где баксы крутятся сотнями миллионов, работа нацеленная на повышение продуктивности труда и снижение стоимости может оказаться очень прибыльной. При этом, если ты подумаешь, то ты поймёшь, что чем дешевле будет перевод с языка на язык, тем больше таких переводов будет выполняться -- это закон спроса-предложения из экономики. А чем больше переводов тем, потенциально, больше денег.

Правда тут есть интересные утверждения, которые не подкреплены ссылками -- было бы неплохо ссылку на описание того, что именно делал Commonwealth Bank of Australia, и по поводу профессиональных переводчиков полагающихся на поддержку машинного перевода очень хочется ссылку: откуда авторы знают про них? Где-то что-то слышали об этом? Насколько их информация достоверна? Может они на опеннете слышали об этом? Но на опеннете чего только не услышишь.

А насчёт того, что реально было сделано:

• We introduce a new approach to translate functions from a programming language to another,
that is purely based on monolingual source code.

Демонстрация нового подхода, бла-бла-бла... любопытно, конечно, но ни о чём.

• We show that TransCoder successfully manages to grasp complex patterns specific to each
language, and to translate them to other languages.

Вот это уже интереснее: человек мыслит о коде паттернами. Чтобы понять код, программист не столько разглядывает индивидуальные выражения и строчки, сколько пытается ухватить полную картину и переформулировать код в терминах типа "итерация по элементам массива", "поиск элемента в массиве", "операция fold/filter/...", инициализация... Человеку, при наличии некоторого опыта, это даётся легко, а вот алгоритмы вечно с этим имеют огромные проблемы. В то же время нейросетки отличаются от алгоритмов тем, что им выявление паттернов даётся довольно просто.

• We show that a fully unsupervised method can outperform commercial systems that leverage
rule-based methods and advanced programming knowledge.

Не совсем ясно, что имеется в виду под "advanced programming knowledge" -- но парой абзацев выше можно найти "Currently, the majority of transcompilation tools are rule-based; [...] they apply handcrafted rewrite rules. Creating them requires a lot of time, and advanced knowledge in both the source and target languages." То есть фишка в том, что для создания rule-based системы нужны дорогущие специалисты, которые шарят в исходном и целевом языке. С системой же на нейросетках можно сэкономить, посадив вместо команды таких специалистов студента, который будет принимать багрепорты в виде примеров кода, которые плохо транслируются, и загонять их в набор сэмплов для обучения нейросетки. Такого студента можно за месяц научить выполнять все эти работы и платить ему не $200k в месяц, а $50k. Это круто, резко скидывает стоимость проекта.

Но стоимость была бы не важна, если бы не "outperform commercial systems", что уже серьёзная заявка. Если коммерческие системы, которые зарабатывают денег тем, чтобы такие системы пилить и применять, могут проиграть конкуренцию нейросетке, которую может натренировать любой Васян, скачав код с github'а и прикупив себе парочку видеокарт, то это очень серьёзно. Это потенциальный game changer.

• We build and release a validation and a test set composed of 852 parallel functions in 3
languages, along with unit tests to evaluate the correctness of generated translations.

Что говорит нам о том, что эта статья не просто теоретическая статья, но вполне практическая статья, где можно надеятся найти методологию оценки/контроля качества перевода кода, которая на практике важнее, чем автоматизация перевода.

• We will make our code and pretrained models publicly available.

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

> Но до этого нынешние нейросети никогда, то есть ни завтра, ни послезавтра, ни через 100 лет не дорастут.

Такого рода утверждения в голове у человека возникают примерно так: явление X никогда не наблюдалось в прошлом, следовательно, по принципу индукции, явление X никогда не будет наблюдаться в будущем. Но фишка в том, что индукция (не матиндукция, а индукция как инструмент естественных наук) -- это довольно хитрая штука, и применять её надо аккуратно. Люди, чтобы не забывать об этом, придумали мудрое высказывание "всё когда-нибудь случается в первый раз". Оно не покрывает всех граблей применения индукции, но иногда всё же полезно.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #51 Ответы: #112

103. Сообщение от Аноним (52), 07-Окт-20, 04:25   +/
Какой только фегни нет в плюсах, а того, что работало в си - нету.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #101

104. Сообщение от Аноним (104), 07-Окт-20, 04:48   +3 +/
Не у него в конторе, что то не так. Со всем миром, что то не так. Перекладывание работы менеджеров на программистов это общая тенденция.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #94

105. Сообщение от Аноним (104), 07-Окт-20, 04:56   +1 +/
Ну в JS же смогли перекодировать. Просто любой указатель у них это индекс управляемого массива. Одного, на всю программу.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29

106. Сообщение от Vkni (ok), 07-Окт-20, 06:28   +2 +/
Ну мертворожденное дело, ясен пень. В переводчиках программ с языка на язык главное - корректность. Это мы, собственно, по переводчикам на ассемблер знаем.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11

107. Сообщение от Vkni (ok), 07-Окт-20, 06:29   +/
Там совершенно дикий, неидиоматический С++ переведён на такой же дикий, неидиоматический Питон. Garbage in, garbage out.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #39

108. Сообщение от Vkni (ok), 07-Окт-20, 06:32   +1 +/
f2c есть, до сих пор используется в разных местах.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #24

109. Сообщение от Аноним (109), 07-Окт-20, 06:36   +2 +/
А можно также бинарный код windows транслировать в c++?
Ответить | Правка | Наверх | Cообщить модератору

112. Сообщение от myhand (ok), 07-Окт-20, 07:38   +1 +/
> Это про востребованность решения.

Ну-ну.

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

Че-т я не вижу кобола в списке этой приблуды, равно как и оценки стоимости
миграции с ее помощью.

> С системой же на нейросетках можно сэкономить, посадив вместо команды таких специалистов студента, который будет принимать багрепорты в виде примеров кода, которые плохо транслируются, и загонять их в набор сэмплов для обучения нейросетки. Такого студента можно за месяц научить выполнять все эти работы и платить ему не $200k в месяц, а $50k. Это круто, резко скидывает стоимость проекта.

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

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

PS: Видел от фейсбушников (частью - тех же) статью про использование машинного
обучения в задачах компьютерное алгебры: интегрирование, решение ОДУ.  Но это примеры,
где сравнительно легко проверить корректность ответа (т.е. его синтаксическую корректность
и, например, производную для интеграла - что просто).  Это вполне имеет смысл.
А вот в данном пример - больше выглядит на то, как сейчас машинное обучение суют
во все нескромные места, если вы понимаете о чем я.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #102 Ответы: #121

113. Сообщение от myhand (ok), 07-Окт-20, 07:44   –1 +/
Там ответ можно относительно легко _проверить_.  На классическом компьютере или даже вручную.

Здесь - ты легко проверить можешь что-то тривиальное.  Т.е. канпелицца, ай нет.  А
потом ловить баги в рантайме, которые неизвестно когда проявятся...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #73

114. Сообщение от Аноним (114), 07-Окт-20, 08:15   +/
А кто потом будет фиксить баги в таком коде?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #116

115. Сообщение от ryoken (ok), 07-Окт-20, 08:18   +/
>> x86

ненужно, сразу в асм POWER.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3

116. Сообщение от Аноним (116), 07-Окт-20, 08:28   +1 +/
дык, адназначна надо строить новый AI powered bugfixer в помощь к этой шняге
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #114

117. Сообщение от Аноним (117), 07-Окт-20, 08:43   –1 +/
Не, ну а чё, хорошая идея - сначала пишем на г..не, а потом преобразовываем в норм языки.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #118

118. Сообщение от myhand (ok), 07-Окт-20, 08:51   +1 +/
Garbage in - garbage out.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #117

119. Сообщение от Мечтатель (?), 07-Окт-20, 09:31   +2 +/
Так, глядишь, научатся проводить говнокод на любом яп в нормальный код на нем же. А там рукой подать до перевода: 1. Хочу чтобы на экране окошко вылезло. 2. Хочу чтобы в окошке написалось  Хело ворлд! 3. А ещё хочу чтобы эта штука за меня в ВК отвечала всякими умными словами и видеобложик вела с кучей лайков. 4. Хочу заработать кучу бабла ничего не делая!
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #125

120. Сообщение от Skynin (?), 07-Окт-20, 09:36   +1 +/
Менеджеры не являются техническими специалистами, чтобы перевести задачу с общей формулировки целей в конкретное техническое задание

Тренд же да, такой, кодеры неспособны выполнять работу программиста.
Они нередко неспособны понять задачу и когда она сформулирована им программистом.
А это собственно и есть качественное отличие программиста от кодера:

Как перестать быть джуниором и начать жить:
1. Научиться программировать
В понятие «уметь программировать» входит не только знание конкретного языка программирования. Базовые(!!!) профессиональные умения программиста должны включать следующие пункты:
Формализация задачи — это умение разложить ее на составляющие и сформулировать так, чтобы ее можно было написать в виде программного кода.
Проектирование — способность представить архитектуру решения, понимание того, чего вы хотите достичь и каким образом это можно сделать.
Написание кода.
Понимание кода — умение читать и понимать написанное кем-то другим.
Рефакторинг кода — умение увидеть ошибки и недостатки кода и переписать его так, чтобы он работал лучше и был более поддерживаемым. Это высшая форма деятельности программиста, потому что это умеет делать только тот, кто программирует по-настоящему хорошо.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #94

121. Сообщение от Ordu (ok), 07-Окт-20, 10:04   +1 +/
>> Это про востребованность решения.
> Ну-ну.
>> В области, где баксы крутятся сотнями миллионов, работа нацеленная на повышение продуктивности труда и снижение стоимости может оказаться очень прибыльной.
> Че-т я не вижу кобола в списке этой приблуды, равно как и
> оценки стоимости миграции с ее помощью.

Фейсбук, как я понимаю, пилит эту штуку под свои задачи. И в фейсбуке вряд ли есть легаси на коболе. Если бы ты видел там в списке кобол и указание стоимости, в которую обошёлся перевод с кобола на C++, то тогда у меня не было бы причин говорить о том, что это _потенциальный_ game-changer, потому что наличие таких данных говорило бы о том, что это уже _упущенная_ возможность влезть на новую игровую площадку.

>> С системой же на нейросетках можно сэкономить, посадив вместо команды таких специалистов студента, который будет принимать багрепорты в виде примеров кода, которые плохо транслируются, и загонять их в набор сэмплов для обучения нейросетки. Такого студента можно за месяц научить выполнять все эти работы и платить ему не $200k в месяц, а $50k. Это круто, резко скидывает стоимость проекта.
> Не уверен.  Положим, если вовсе не скомпилилось - это баг, который
> васян-студент может
> загнать в базу.  А если скомпилилось, но с багом в логике,
> что вылетит хрен
> знает когда в рантайме?

Английский, мазафака, ты можешь в него? "Using a transcompiler and manually adjusting the output source code may be a faster and cheaper solution" Какие слова непонятны? Или вообще всё непонятно? Давай я изложу тогда подробнее то, что написано, и то что непосредственно вытекает из написанного.

Речь идёт о том, что транскомпиль используется для перевода, и результат затем обрабатывается вручную. Я процитировал в предыдущем комменте также слова о валидации, которые наводят на мысль о том, что там всё чуть интереснее, и не все проверки результата выполняются вручную. Наличие _коммерческих_ rule-based систем прямо намекает на то, что под них есть рынок и этот сценарий перевода с поддержкой транскомпиля -- это не просто фантазии автора, это вполне себе рынок, где люди работают и даже ради этого запиливают софт. Да, я согласен, ссылок недостаточно -- был бы интересен обзор такого рода проектов, как с использованием транскомпиляторов так и полностью на ручной тяге. Но тут опять же -- если тебе эта тема интересна настолько, что ты хочешь точнее оценить перспективы, то ты сам можешь провести такое исследование рынка.

myhand, ты иногда демонстрируешь проблески интеллекта, но складывается впечатление, что тебе так хочется спорить, что ты готов вышвырнуть свой интеллект в окно, натянуть клоунский колпак strawman'а, лишь бы получить хоть какую-нибудь позицию, которая позволяет спорить.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #112 Ответы: #126

122. Сообщение от Аноним (122), 07-Окт-20, 10:13   +2 +/
Ну ок. Пусть занимаются. Хоть наркотики по падикам не употребляют.
Ответить | Правка | Наверх | Cообщить модератору

123. Сообщение от Аноним (85), 07-Окт-20, 10:21   +3 +/
>nonbinary

Для таких извращений нужна "Сетунь".

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #42

124. Сообщение от Аноним (85), 07-Окт-20, 10:27   +1 +/
По факту есть. alloca называется.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #101 Ответы: #129, #134

125. Сообщение от Аноним (85), 07-Окт-20, 10:29   +1 +/
>1. Хочу чтобы на экране окошко вылезло.
>2. Хочу чтобы в окошке написалось  Хело ворлд!

GPT-3 (гигантская сетка тоже на Transformer) уже это умеет.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #119 Ответы: #139

126. Сообщение от myhand (ok), 07-Окт-20, 10:58   +1 +/
> Фейсбук, как я понимаю, пилит эту штуку под свои задачи.

Или в фейсбуке дядиньки просто работают...  Ну вряд-ли там новую CAS пилят,
согласись, хотя статейки (куда интереснее) печатают.

Не будем делать далеко идущих выводов.

> Английский, мазафака, ты можешь в него? "Using a transcompiler and manually adjusting
> the output source code may be a faster and cheaper solution"
> Какие слова непонятны?

Непонятны не слова, а цифры.  Как ты "around $750 million and 5 years of work to convert its platform from COBOL to Java" конвертируешь в "chaper solution", если все-равно
необходимо "manually adjusting" конвертировать труд этой бредогенерилки?

> Речь идёт о том, что транскомпиль используется для перевода, и результат затем
> обрабатывается вручную.

Если раньше был необходим труд специалистов и теперь необходим труд специалистов - то в
чем разница?

> Наличие _коммерческих_ rule-based систем
> прямо намекает на то, что под них есть рынок и этот
> сценарий перевода с поддержкой транскомпиля -- это не просто фантазии автора,
> это вполне себе рынок, где люди работают и даже ради этого запиливают софт.

Этот софт работает на других принципах.  В частности, результат гарантированно
синтаксически корректен, он также не добавляет новых логических ошибок.

Да, результат обработки "rule-based" систем удобнее обрабатывать специалистам,
посколько это лишь детерминированно трансформированный человеческий input, а не продукт
надмозга, который может даже не конпилироваться.

> myhand, ты иногда демонстрируешь проблески интеллекта, но складывается впечатление, что
> тебе так хочется спорить, что ты готов вышвырнуть свой интеллект в
> окно, натянуть клоунский колпак strawman'а, лишь бы получить хоть какую-нибудь позицию,
> которая позволяет спорить.

Дон поражен в пятку...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #121 Ответы: #128

127. Сообщение от Аноним (127), 07-Окт-20, 10:59   +1 +/
Скорее Лицокнига развивает trapCoder
Ответить | Правка | Наверх | Cообщить модератору

128. Сообщение от Ordu (ok), 07-Окт-20, 12:18   +/
> Непонятны не слова, а цифры.  Как ты "around $750 million and
> 5 years of work to convert its platform from COBOL to
> Java" конвертируешь в "chaper solution", если все-равно
> необходимо "manually adjusting" конвертировать труд этой бредогенерилки?
>> Речь идёт о том, что транскомпиль используется для перевода, и результат затем
>> обрабатывается вручную.
> Если раньше был необходим труд специалистов и теперь необходим труд специалистов -
> то в
> чем разница?

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

Автоматическая конвертация избавляет тебя от собственно переписывания кода. Тебе точно так же надо будет писать тесты, точно так же надо будет выяснять причины, почему тесты фейлятся. Но переписывать не надо будет. При автоматической трансляции, я полагаю, будет больше сфейлившихся тестов, и поэтому исправление багов трансляции займёт больше времени. Но переписывание кода довольно долгий процесс, это существенно быстрее, чем писать с нуля, но ты сам подумай: сколько человекочасов надо чтобы переписать 100k строк? Вот эти человекочасы вычитаются, из процесса транскомпилем, и добавляются дополнительные человекочасы на большее количество сфейлившихся тестов.

И это очень полезно: гораздо полезнее тратить время на поиск и исправление багов, нежели на переписывание. Переписывание -- это тупая рутина, которая неизбежно приводит к тому, что внимание рассеивается, концентрация теряется, и вот ты уже добавляешь один баг за другим, и при этом твои баги гораздо более креативны нежели любые баги, которые может привнести алгоритм: чем больше интеллекта, тем заморочнее его ошибки.

>> Наличие _коммерческих_ rule-based систем
>> прямо намекает на то, что под них есть рынок и этот
>> сценарий перевода с поддержкой транскомпиля -- это не просто фантазии автора,
>> это вполне себе рынок, где люди работают и даже ради этого запиливают софт.
> Этот софт работает на других принципах.  В частности, результат гарантированно
> синтаксически корректен, он также не добавляет новых логических ошибок.

Ну, эмм... я не знаю, если честно, но я бы не полагался на отсутствие логических ошибок. Синтаксические же ошибки... Ну во-первых здесь в новости написано, что они по большей части корректируются дополнительными ограничениями в декодировщике. Во-вторых, синтаксические ошибки -- это туфта. Их исправление это конечно муторная отупляющая рутина, но они правятся элементарно. Вот когда новый код ведёт себя не так, как вёл себя старый, вот тут можно серьёзно залипнуть на исследовании старого кода, который хрен пойми что и как делает, и/или выяснении причи, почему новый код ведёт себя иначе.

Но как бы там не было, нельзя полагался на результат переписывания, каким бы образом он бы не был получен -- ручным переписыванием, rule-based транскомпиль, нейросетка... какая разница? В любом случае будут привнесены новые баги, а старые неисправленные усугубятся. А раз доверия коду нет, значит валидация, валидация и ещё раз валидация. Причём не глазами -- глазами человек очень плохо ищет ошибки. Причём с нелокальными ошибками всё гораздо хуже (то есть с ошибками, которые нельзя увидеть анализируя код в окрестности какой-то строки, которые можно заметить, только если посмотреть в три разных окрестности трёх разных строк и прокрутить какой-нибудь специфический сценарий работы этого кода). Unit-тесты очень заходят, интеграционные тесты тоже весьма и весьма полезны.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #126 Ответы: #131

129. Сообщение от Аноним (52), 07-Окт-20, 12:32   +/
По факту все языки полные, но попы горят только у сплюснутых.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #124

130. Сообщение от Урри (?), 07-Окт-20, 12:33   +/
Потому что студенты почитав пару статей в интернете с помощью тензорфлоу такого сделать не могут, а транслировать простые структуры в простые структуры (что вполне легко делается с помощью якк/бизон) - могут. Правда это не точно (нейросети не умеют точно(!) делать заданную работу - это заложено в самое понятие нейросети).

Посему встает вопрос - "а нехрена"? Попытаться классифицировать непонятный обфусцированный метакод и сказать на каком он языке и что, приблизительно, пытается делать - это запросто. А переводить один компьютерный язык, не допускающий вольностей в другой компьютерный язык, не допускающий вольностей - не-а?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3

131. Сообщение от myhand (ok), 07-Окт-20, 12:41   +/
> А, тебе не приходилось переписывать код?

Милое дело!

> руками ли ты переписываешь или автоматически

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

> Автоматическая конвертация избавляет тебя от собственно переписывания кода.

Хороший вопрос - насколько...

> Тебе точно так же надо будет писать тесты

Не понял, а что мешает сконвертировать тесты?  Ну если они не на том же языке пишутся - так
не по олбански-же?

> При автоматической трансляции, я полагаю, будет больше сфейлившихся тестов, и поэтому исправление багов трансляции займёт больше времени.

У тебя какое-то болезненное чувство к наборам тестов.  Это полезно для выявления каких-то
тривиальных вещей, для уверенности что каждый кусок кода хоть где-то - отработал.

Но - не более.

> Вот эти человекочасы вычитаются,
> из процесса транскомпилем, и добавляются дополнительные человекочасы на большее количество
> сфейлившихся тестов.

Я опасаюсь что из этого, для начала, ты не вычел время на чтение и понимание трансконпилировавшегося (или нет) текста...  Читать машинное творчество непросто, да.

> Переписывание -- это тупая рутина

Не совсем.  Разные языки - разные стили программирования.  Т.е. если даже в рамках
одного языка - это задача, то различие языков просто вынуждает к рефакторингу.

> Ну, эмм... я не знаю, если честно, но я бы не полагался
> на отсутствие логических ошибок.

Про это я писал.  Как тебе трансляция одной логической ошибки - в две?  Или в 10?

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

> Во-вторых, синтаксические ошибки -- это туфта.

Да, но если человеческое время надо тратить даже на такую туфту - тушите свет.

> Но как бы там не было, нельзя полагался на результат переписывания, каким
> бы образом он бы не был получен -- ручным переписыванием, rule-based
> транскомпиль, нейросетка... какая разница?

Разница есть.  rule-based - дает определенные гарантии о поведении результата.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #128 Ответы: #138

132. Сообщение от Аноним (57), 07-Окт-20, 13:29   +/
Не совсем всё грустно. Можно было бы многочисленные ядерные структуры с указателями на функции заменять на абстрактные базовые классы.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #69

133. Сообщение от Аноним (57), 07-Окт-20, 13:32   +/
Вангую, скоро ИИ начнёт заниматься поиском уязвимостей в исходниках.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #140

134. Сообщение от Аноним (101), 07-Окт-20, 13:44   +2 +/
В крестовом примере на картинке не аллока, получается, обoсpались
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #124 Ответы: #141

135. Сообщение от Аноним (-), 07-Окт-20, 14:04   –1 +/
Всеравно оно не нужно. Что на том хрусте написать можно вообще ценного.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72

136. Сообщение от Аноним (137), 07-Окт-20, 14:21   +1 +/
Лучше русский переводить в джаваскрипт
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #167

137. Сообщение от Аноним (137), 07-Окт-20, 14:29   +/
Т.е. ты знаешь нишу на миллион долларов и даже не пытаешься ее занять? Странный ты или чего-то не договариваешь.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #69

138. Сообщение от Ordu (ok), 07-Окт-20, 15:36   +/
>> руками ли ты переписываешь или автоматически
> Тут я не копенгаген по части практической, но теоретически - машинная трансляция
> по заданным правилам как раз позволяет избежать необходимости ручной выверки кода.

Я думаю, что такой компилятор можно написать, но он нагенерит тебе такой код, что лучше в него не заглядывать даже. Фишка ведь в том, чтобы получить код, который затем можно поддерживать.

>> Автоматическая конвертация избавляет тебя от собственно переписывания кода.
> Хороший вопрос - насколько...

Да, хороший вопрос. Судя по заявлениям этой статьи, нейросетка избавляет лучше, чем rule-based конвертация.

>> Тебе точно так же надо будет писать тесты
> Не понял, а что мешает сконвертировать тесты?

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

Я не могу сказать, на самом деле, потому что я не переписывал код с поддержкой транскомпилей. Мне приходилось работать с кодом, переписанным таким образом при помощи p2c, но тот код уже был переписан до меня и уже был в работоспособном состоянии, когда мои ручки до него дотянулись. Кстати исходно я исследовал тот код, допиливая его до лучшего состояния. Например, заменяя вызовы writeln на вызовы printf. И приводя к верхнему регистру все константы объявленные через define (в исходном паскалевском коде они, видимо, употреблялись в разных регистрах, и то ли p2c, то ли тот кто правил код до компилируемого состояния, решил эту проблему посредством множественных define'ов для каждой константы -- под каждое написание константы отдельный define.

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

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

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

Это очень напоминает фишинг. Чем больше тестов, чем подлее тесты, тем больше шансов отловить возникший баг. Плюс помогает опыт: если писать тесты, а потом разглядывать багрепорты о багах, которые проскочили сквозь сеть тестов, и при этом задаваться вопросом о том, как надо было писать тесты, чтобы эти баги не проскочили, то со временем учишься писать тесты так, чтобы через них проскакивали бы только редкие баги. Отчасти опыт можно заменить чтением книжек о тестировании и, кстати, философией. Тесты -- это тоже своего рода способ познания реальности. Нужно вогнать себя в нужный майндсет, прежде чем писать тесты -- надо целенаправленно пытаться порушить код тестом. Надо научиться чувствовать в себе неуверенность, которая возникает при идее засунуть в функцию какие-нибудь подлые данные -- если неуверенность есть, значит НАДО СРОЧНО ВЗЯТЬ И ЗАСУНУТЬ. Тесты часто пишут проверяя что код делает то, что задумано, но надо писать тесты так, чтобы заставить его сделать то, что не задумано.

Очень полезно, когда тест пишет не тот человек, который писал код, и который будет править код, чтобы тот справился с тестом, показавшим, что код кривой. Когда пишешь тесты под свой код, во-первых, сложно придумать кейс на котором код сфейлится: если ты об этом кейсе можешь подумать, то скорее всего ты уже о нём подумал, когда писал код, и учёл этот кейс в коде, и тестом ты лишь отметишь факт того, что ты об этом подумал, когда писал код. Во-вторых есть тенденция делать слишком много допущений о корректности кода -- отчасти потому, что ты точно знаешь как код написан и что он делает (точнее думаешь, что точно знаешь), отчасти потому, что где-то в глубине психики ты знаешь, что если ты напишешь тест, который порушит код, то тебе придётся тратить дополнительное время на отладку кода и исправление. Понятно, что это глупость, но так работает психика: каждый раз когда ты тестом доказал кривость кода, психика воспринимает это как наказание, начинает вырабатываться условный рефлекс, что хороший тест -- это плохо, и этот рефлекс начинает модифицировать твоё поведение в процессе написания тестов так, что ты будешь писать тесты, которые покажут, что код хороший, годный, безбажный. Надо уметь контролировать эти психические процессы, чтобы они не мешали. Или (что лучше) оставлять написание тестов кому-нибудь ещё, тому кто будет получать бонус к премии за каждый тест, который порушит твой код, для кого тест, порушивший твой код, будет не наказанием, а подкреплением и, соответственно, у него будет вырабатываться рефлекс, что хороший тест -- это хорошо. И этот рефлекс будет автоматически подталкивать его к написанию хороших, подлых тестов, так что тот кто писал код будет чертыхаться и бормотать себе под нос, что тестер извращенец и ему давно пора в психушку.

>> Вот эти человекочасы вычитаются,
>> из процесса транскомпилем, и добавляются дополнительные человекочасы на большее количество
>> сфейлившихся тестов.
> Я опасаюсь что из этого, для начала, ты не вычел время на
> чтение и понимание трансконпилировавшегося (или нет) текста...  Читать машинное творчество
> непросто, да.

Одна из фишек этих транскомпилей -- генерить читабельный код. По-крайней мере не менее читабельный чем оригинальный. Нет никакого смысла транскомпилировать, если результат нечитаемый. Точнее есть, но для совсем других задач -- это когда лень писать компилятор в машинный код, и поэтому компилируем в C, чтобы потом C скомпилировать компилятором. Но в новости речь о транскомпиляторах нацеленных на бесповоротный перевод проекта с одного языка на другой. Нет никакого смысла переводить проект с языка на язык с потерей читабельности кода.

>> Переписывание -- это тупая рутина
> Не совсем.  Разные языки - разные стили программирования.  Т.е. если
> даже в рамках
> одного языка - это задача, то различие языков просто вынуждает к рефакторингу.

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

>> Ну, эмм... я не знаю, если честно, но я бы не полагался
>> на отсутствие логических ошибок.
> Про это я писал.  Как тебе трансляция одной логической ошибки -
> в две?  Или в 10?

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

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

А фейсбуку не кажется. И мне не кажется.

>> Но как бы там не было, нельзя полагался на результат переписывания, каким
>> бы образом он бы не был получен -- ручным переписыванием, rule-based
>> транскомпиль, нейросетка... какая разница?
> Разница есть.  rule-based - дает определенные гарантии о поведении результата.

Я не верю в эти гарантии. Если rule-based -- это механический перевод, который, например, при трансляции C++ -> Python, начнёт запиливать в Python'е модель памяти C++, указатели C++, массивы C++, и так далее, если при этом количество правил не такое уж и большое, и правила простые, если внешние API на, которые полагаются исходный и целевой код -- одни и те же, то можно довериться. Но если мы переводим код с использования STL и boost на стандартные Python'овские библиотеки или обратно, то верить такому переводу нельзя. Такой перевод потребует безумное количество правил, среди этих правил будут достаточно сложные, проверить каждое правило задачка ещё та, доказать что эти правила ни при каких условиях не помешают друг-другу практически невозможно.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #131

139. Сообщение от Трансформатор (?), 07-Окт-20, 15:48   +2 +/
Только за пределами hello world у неё это очень плохо получается.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #125

140. Сообщение от Анонимсан (?), 07-Окт-20, 17:12   +/
> ИИ начнёт заниматься поиском уязвимостей в исходниках

Это очень опасно. А вдруг ИИ начнёт эксплуатировать найденные уязвимости? Будет взламывать компьютеры хомячков, шифровать весь домашний архив с проном, а затем требовать выкуп в биткоинах? Как представлю себе это,- аж мурашки по коже.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #133 Ответы: #149

141. Сообщение от Аноним (141), 07-Окт-20, 18:09   –1 +/
Это не VLA. VLA это когда int[] в описании структуры. int[] в параметре функции это тоже самое что int*. какой в опу alloca...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #134 Ответы: #148, #151

142. Сообщение от Аноним (-), 07-Окт-20, 19:43   +2 +/
Вспоминается одна старая, но годная статья, затрагивающая тему крайне низкого качества исходного кода программных продуктов и нежелания программистов погружаться решение возникающих проблем. Цитирую близко к смыслу: когда я вижу, что качество кода проверено искусственным интеллектом, я с ужасом понимаю, что этот код даёт тормозящее, висевшее, прожорливое и уродливое программное обеспечение.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #166

143. Сообщение от IRASoldier_registered (ok), 07-Окт-20, 20:06   –1 +/
Бедные альтрайты. Столько фобий и так перепутаны с реальностью...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #60

144. Сообщение от IRASoldier_registered (ok), 07-Окт-20, 20:10   –2 +/
Вообще на техфорумах в среднем у _них_ уровень токсичности сильно поменьше _нашего_. У нас вероятность нарваться на ответ "кури мануалы", "ниасилятор", "а зачем тебе вообще цуникримпель?" обычное дело. С откровенным убожеством сталкивался, да, на техподдержках - но что характерно, какой-нибудь индус или вьетнамец, хотя нифига не поможет, вежлив до последнего.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #64 Ответы: #150, #152

145. Сообщение от Дерьмократ (?), 07-Окт-20, 20:11   +1 +/
Зачем?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18

146. Сообщение от IRASoldier_registered (ok), 07-Окт-20, 20:16   +/
Как будто в этом есть что-то плохое.

Кстати, Facebook активно применяет Erlang, помимо прочего.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14

147. Сообщение от Аноним (147), 07-Окт-20, 21:21   –1 +/
Ни в питоне ни в с++ нет проверяемых исключений
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #54

148. Сообщение от Аноним (52), 08-Окт-20, 01:07   +1 +/
> int[] в параметре функции

Ты, походу, слепой...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #141

149. Сообщение от Аноним (-), 08-Окт-20, 12:30   +/
Вы слишком хорошего мнение об ИИ. Обычно за любой любым страшным ИИ, сидит кучка обезьянок, только чубы торчат.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #140

150. Сообщение от анон (?), 08-Окт-20, 14:28   +/
> Вообще на техфорумах в среднем у _них_ уровень токсичности сильно поменьше _нашего_.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #144

151. Сообщение от Совершенно другой аноним (?), 08-Окт-20, 18:55   +/
там прямо вторая строчка C++ исходника:

void worstFit(int blockSize[], int m, int processSize[], int n) {
  int allocation[n];
...
}

строка "int allocation[n];" это VLA
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #141

152. Сообщение от Аноним (152), 08-Окт-20, 19:12   +/
> Вообще на техфорумах в среднем у _них_ уровень токсичности сильно поменьше _нашего_

Нет. https://habr.com/ru/post/178747/

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #144 Ответы: #155

153. Сообщение от Аноним (152), 08-Окт-20, 19:17   +1 +/
> Где вы таких находите? Я сколько ни общался на гитхабе, все адекватные.

Ага, напиши в любом github репо, где коммитит https://github.com/nodejs/node/pulls/addaleax фразу  "Hi guys". Тебя обольют грязью и попросят писать "Hi folks", ибо дамы тоже программируют.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #64 Ответы: #154

154. Сообщение от Аноним (152), 08-Окт-20, 19:18   +/
Не та линка, вот ее профиль - https://github.com/addaleax
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #153 Ответы: #157

155. Сообщение от IRASoldier_registered (ok), 08-Окт-20, 19:40   –1 +/
И так бывает. Никто не идеален. И есть места в ИХтернете, где можно общаться "без правил" и куда, ожидаемо, стекаются неадекваты. Но у нас такого больше и неадекваты чувствуют себя вольготно везде, часто полагая своё поведение нормой - "а чо? мы не какие-то там европиндосотолерасты! прямо, по-мужски разговариваем".

Кстати, неплохо по ссылке заминусованный товарищ умывал любителей русского своеобразия.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #152 Ответы: #159

157. Сообщение от Аноним (152), 08-Окт-20, 21:38   +3 +/
Только эта дама не любит, когда называют дамой. Она ненавидит любой гендер, она типо над гендерами. Почитай ее твиттер, там кристально чистая ненависть к людям, которые не уважают ее третий гендер (к слову, местоимения she/her она тоже ненавидит). Их IT среда не менее токсичная, чем наша. Просто направление желчи немного в другое русло.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #154 Ответы: #158

158. Сообщение от Аноним84701 (ok), 09-Окт-20, 01:04   +1 +/
>  Их IT среда не менее токсичная, чем наша. Просто направление желчи немного в другое русло.

Да все "нормально" там с направлением.
Просто сравнивают обычно теплое с мягким, т.е. большие, интернациональные платформы с неплохой  монетизацией (и соотв. модерацией) и любительские проекты типа опеннет.

Причем, не учитывая не только "профессиональную модерацию", но и фактор владения (неродным) английским и интернациональность платформ: токси^W красиво и заковыристо "послать по матушке", да так, чтобы оппонент несмотря на культурные различия понял, не так-то и просто.

А так, в "ихних"  "приличных" тоже вполне могут (или могли -- национальне, неанглоязыячные форумы за последние десять лет хорошо "подвымерли") намекнуть на сходство с некоторыми антомическими отверстиями (используемые для дефекации -- языковые и культурные различия сказываются), на степень умственного развития и/или образования (разве что тема "нищ3бродства" мусолится обычно в более мягких выражениях, но таки мусолится).
В более "школотронских" -- и на древнюю профессию мамы и на однополость "родителей" (или откуда именно вылезал оппонент при рождении) и на размер детородных органов и на нетрадиционные сексуальные предпочтения могут ...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #157

159. Сообщение от нафиг нужно (?), 09-Окт-20, 08:23   +/
"неплохо по ссылке заминусованный товарищ умывал любителей русского своеобразия."
Что ты имеешь против русского своеобразия? Ты нерусь?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #155 Ответы: #162

160. Сообщение от Георгийemail (??), 09-Окт-20, 13:49   +/
Вообще-то есть, но не уверен, насколько он корректный.
https://github.com/andrei-markeev/ts2c
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #67

161. Сообщение от Георгийemail (??), 09-Окт-20, 13:55   +1 +/
Можно попробовать JS перевести в C. Потом C скормить транскодеру как C++ и получить джаву/питон.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #67

162. Сообщение от IRASoldier_registered (ok), 09-Окт-20, 22:14   –1 +/
> Ты нерусь?

О, ещё один своеобразный.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #159

164. Сообщение от Аноним (166), 14-Окт-20, 01:31   +/
Даешь такую же для exe и ipa. Обрезанную тётю Иду не предлагать!
Ответить | Правка | Наверх | Cообщить модератору

165. Сообщение от Аноним (166), 14-Окт-20, 01:37   +/
А почему такое угнетение гвоздей?! Это гвозди должны забирать молоток для социальной справедливости.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #61

166. Сообщение от Аноним (166), 14-Окт-20, 01:40   +/
Что значит с ужасом? Радуйся, для тебя есть работа. Не будь быдлокода с голоду бы помер.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #142

167. Сообщение от Аноним (166), 14-Окт-20, 01:46   +/
Вранье главного вора в правду
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #136


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру