"Пост-Java" языки программирования

Dec 20, 2011 16:22

Любой мало мальски соображающий в программировании человек понимает, что Жаба - язык преунылейший, абсолютно несовременный и неудобный в использовании. Всем тем самым "бест практисез", которыми пользуется индустрия (для конкретики возьмём классическую книжку "Effective Java") - язык не только идёт навстречу, но ещё и активно препятствует. Опять- ( Read more... )

программизм

Leave a comment

Comments 83

izard December 20 2011, 17:05:43 UTC
clojure бы добавить? я могу, если дадите permissions.

Reply

rainman_rocks December 20 2011, 17:14:43 UTC
подумаю пока. Уже даже Scala туго влезла в эту таблицу, ибо парадигменные различия слишком велики, а рассматривать одну только надводную часть айсберга толку мало.

Reply


stdray December 20 2011, 17:41:07 UTC
F# может еще?

Reply

rainman_rocks December 20 2011, 17:46:12 UTC
Опять-таки нет, см. выше про Scala.

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

Reply

theiced December 20 2011, 17:59:29 UTC
быгыгы. лисп на порядки проще уродской жабы.

Reply

rainman_rocks December 20 2011, 18:00:31 UTC
неа

Reply


ext_650079 December 20 2011, 17:46:11 UTC
Все это барахло сверху JVM упирается в перфоманс по сравнению с Pure Java. Хотя в последнее время и считается нормальным уступать на порядок по сравнению с Java.

Reply

rainman_rocks December 20 2011, 17:47:15 UTC
перформанс в прикладном программировании уже давным давно никого не волнует, главное шоб пузырьком не сортировали

Reply

theiced December 20 2011, 17:59:00 UTC
та же кложура зачастую работает быстрее чем жабокод.

Reply

ext_650079 December 20 2011, 18:45:41 UTC
Пруф или не было.

Reply


theiced December 20 2011, 17:57:03 UTC
1. зачем там го? который в принципе клёвый и всё такое (у нас на го серверная часть), но имеет к жабе ещё меньше отношения чем пистон.

2. где собсна кложура, которая жвм и всё такое?

Reply

rainman_rocks December 20 2011, 18:02:03 UTC
томущо го имеет ту же нишу, что и жабо: императивное прикладное программирование

Reply


jakobz December 20 2011, 18:15:16 UTC
По C# пару моментов:

Declarative: Ranges - Enumerable.Range(1,10) не пойдет?

Semantics: Switch / pattern matching; Multiple dispatch - это можно делать через оверлоады и dynamic:

void Process(int x) { ... }
void Process(string s) { ... }

void Sample(object o) { Process((dynamic) o);}

Правда я не видел нигде чтобы так делали, и понятно статически никак не проверяется.

Reply

stdray December 20 2011, 18:45:50 UTC
>Operators: Structural equality test via "=="
Стоит No, хотя для структур via a.Equals(b) такое поведение характерно. Poor должно быть.

>Types: Top-level functions
Стоит No. Есть делегаты, есть всякие Func и Action соответственно можно писать функции высшего порядка. Yes должно быть.

>Types: Tuples
Стоит Yes. Они написали классы Tuple, Tuple и так до 8 аргументов. По-моему это не очень честные кортежи. Some должно быть.

Reply

jakobz December 20 2011, 18:49:21 UTC
Top-level functions - это, я думаю, про функции вне классов. В C# из нельзя делать и вызывать, хотя .net их поддерживает.

Reply

stdray December 20 2011, 18:55:39 UTC
Тогда я не прав и Yes стоит обосновано. Я прочитал как higher-order function и думал соответствующим образом.

Reply


Leave a comment

Up