LINUX.ORG.RU

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

Зачем тебе эта оопщина сдалась? На С пиши. С головой хватит!

Ну его в пень бегать по всему коду и исправлять поведение, если можно в одном месте. И постоянно копипастить

webmak ★★
() автор топика

Попробуйте D. Некоторым нравится.

Правда как там с инфраструктурой (насколько вам хватит vibe.d) не знаю.

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

Правильно, нужно засрать любую тему. А почему не asm с haskell?

yyk ★★★★★
()

Твои требования полностью покрывает PHP:
1. Есть ООП.
2. Инфраструктура под веб из коробки.
3. Компилируется через HipHop.
4. Не ява.

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

Твои требования полностью покрывает PHP:

типа golang? - многопоточность, общая память?

pthreads - не работает так как большинство нужных расширений не потоко безопастны.

общая память - если запускать как демон(reactphp) нужно писать свои костыли для обработки запросов и т.д., а на php оно становится требовательным к ресурсам, так как не используется си код

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

Оформи базовую часть как библиотеку или хотя бы сниппеты.

УМВР.

anonymous
()

Only

GOLANG!!!

anonymous
()

Посоветуйте язык программирования

Dart

Что есть наподобии golang

Dart, от того же Гугла. Сходств с golang не много, больше с Java

но с нормальным ООП

Поддержка ООП имеется :)

и инфраструктурой для веба?

Dart создан для веба. Есть версия Angular для Dart, есть масса других фреймворков и библиотек.

Именно компилируемый - не java

Комилируется в JavaScript (это такой ассемблер для современного веба). Не Java но синтаксис очень похож. Есть специальная сборка браузера Chromium где внутри есть DartVM, называется Dartium. Т.е. можно писать / тестировать что-то без какой-то компиляции в JS.

Вопреки всему Dart активно развивается, частота коммитов высокая. В Google много проектов на нем. То что они его забросят вероятность есть, но малая. Писать на Dart можно как фронтэнд часть так и бэкэнд. По всем ощущениям это приятнее Javascript.

Других языков, подходящих под ваши условия, не знаю.

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

проблема java не в синтаксисе - он мне нравится. Проблема в ресурсах. Зарабатывать буду на php, python, java. Ищу язык и инфраструктуру для совего проекта.

Вот https://gitea.io/en-US/ - написано на golang расход ресурсов просто пипец как удивил.

Вот хочу такое же как golang - но зачем они без ООП сделали, не понимаю.

Golang мне напоминает js и его извращения при написании классов.

Вот пример извращений https://github.com/go-gitea/gitea/blob/master/models/action.go

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

Да нормально там все с ООП. Есть интерфейсы и наследование; в каком-то смысле множественное даже (просто оно называется composition и ведет себя более предсказуемо).

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

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

Davidov ★★★★
()

Именно компилируемый - не java

Язык общего назначения Common Lisp для промышленного применения.

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

Да нормально там все с ООП. Есть интерфейсы и наследование

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

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

Я думаю ничего сравнимого в этой нише (компилируемость, веб-фреймворки, асинхронность) нет

Любители D с вами сильно не согласятся :) Там и со скоростью компиляции все нормально, и со скоростью работы, и даже с шаблонами. Ну и нормальный ООП «из каропки». Плюс настоящая иммутабельность прямо в языке поддерживается.

eao197 ★★★★★
()

C# уэже советовали?

Dudraug ★★★★★
()

Имхо, для веба из компилируемых ничего кроме go и нету.

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

Возраст D сложно оценивать. D2, по словам очевидцев, стабилизировался года два назад. Как раз во времена Rust 1.0 :)

Ну и много ли ТС-у нужно этих самых либ, учитывая, что D спокойно может брать C-шные либы.

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

Ага, а потом будет D3 и тд.

Как-то непохоже. Если и будет D3, то это уже точно будет крест на языке.

Как будто в расте есть проблемы с биндингами.

Речь не об этом. А о том, что небольшое количество родных D-шных библиотек может совсем не помешать ТС-у.

А вот с Go на D перейти будет легче, чем на Rust.

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

Проблема в ресурсах

И... где проблема-то?

Golang мне напоминает js и его извращения при написании классов.

Там всё гораздо хуже.

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

Есть интерфейсы и наследование

Нет основной части ООП — виртуальных функций.

ООП, само по себе, конечно, суксь и мастдай, но даже этого там нет.

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

Как реализовать полиморфизм?

Ну интерфейсом же. Тогда никакого наследования не нужно в данной ситуации.

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

Нет основной части ООП — виртуальных функций.

Формально нету. На практике, вроде, всегда можно обойтись интерфейсом и dependency injection. Либо наследоваться в другую сторону, если возможно.

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

Срочно!!! «Скорую» этому мистеру... :-)

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

c++ же :-)

Не хотелось бы спорить с вами, но BASIC - однозначно... :-)

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

проблемы с биндингами.

Лишь бы не было проблем с «бандюками»... :-)

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

Любители D с вами сильно не согласятся :) Там и со скоростью компиляции все нормально, и со скоростью работы

Почему D нету на The Computer Language Benchmarks Game, кстати?

Собственно проблема в том, что если язык не слишком популярен, то будут проблемы с библиотеками, сообществом и т.п. Количество библиотек для Go и D несравнимо, конечно.

Ну и мне кажется, D уже не взлетит. Они слишком долго тянули с открытием исходников компилятора, сейчас хайп уже прошел, у мозиллы Rust подрастает, у гугла — Go уже вовсю используется в продашкн.

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

Почему D нету на The Computer Language Benchmarks Game, кстати?

Ибо некому писать код.

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

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

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

Формально нету.

Фактически нету.

На практике, вроде, всегда можно обойтись интерфейсом и dependency injection.

Это не то же самое.

Хотя я соглашусь, что интерфейс — обычно более правильный выбор; Гослинг (который не танцует) как-то раз сказал, что, если бы делал жабу сейчас, то выкинул бы наследование, но оставил бы интерфейсы и дженерики. На такую жабу я бы посмотрел.

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

Руби. Компилируемый, для веба, не java.

Когда скомпилируете - позовите посмотреть, я джва года жду.

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