LINUX.ORG.RU

Языки/платформы с поддержкой инкрементальной разработки.


0

2

Какие существуют?

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

Насколько я знаю Common Lisp приспособлен для этого. Какие ещё? Erlang?

Инъекция кода при отладке? Такое есть в Visual Studio (C++, C#, VB.NET) , в Java/NetBeans

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

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

vladimir-vg ★★
() автор топика

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

zz ★★★★
()
Ответ на: комментарий от vladimir-vg

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

в общем случае это невозможно ни для какого ЯП

anonymous
()

Просто интересно.
А зачем?

trex6 ★★★★★
()

# имеется ввиду чтото типа этого:
: (de f(X)
(if (=0 X) 1 (* X (f (dec X)))))
-> f
: (f 5)
-> 120
: (f 100)
-> 93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000
: (pp 'f)
(de f (X)
(if (=0 X)
1
(* X (f (dec X))) ) )
-> f
: (trace 'f)
-> f
: (f 5)
f : 5
f : 4
f : 3
f : 2
f : 1
f : 0
f = 1
f = 1
f = 2
f = 6
f = 24
f = 120
-> 120
: (de f(X) X)
# f redefined
-> f
: (f 5)
-> 5
: (pp 'f)
(de f (X)
X )
-> f

anonymous
()

smalltalk же

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

Чувак, ты реально утомил спамить devel тупыми и бессодержательными сообщениями. Вот прочитал несколько последних (подряд, без выборки):

Можно. Как только поймёшь, что тебя не устраивает.

А нафига удалять поэлементно?

Пипец. Присоединяюсь к анонимусу.

Ничего нее давай этим бездельникам.

man sed

Вон из профессии!

Вот уж говнокод, так говнокод. Всем говнокодам говнокод.

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

anonymous
()

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

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

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

в общем случае это невозможно ни для какого ЯП

В Лиспе так и пишут. А потом забывают сохранить емаксовский буфер и коммитят сломанный код %)

mv ★★★★★
()

насколько я понял вопрос - smalltalk единственный претендент на правильный ответ

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

А потом забывают сохранить емаксовский буфер и коммитят сломанный код %)

Мало кто в таком признается %)

tailgunner ★★★★★
()

tcl в смысле языка/платформы в этом идентичен CL. А вот с идентичным SLIME-ом сложнее.

antares0 ★★★★
()
Ответ на: комментарий от vladimir-vg

Посмотри трансляцию Humble Indie Bundje Mojam, там Нотч пишет игру на жабе, в 1 окошке игра, в соседнем Эклипс с явой, в Эклипсе он меняет что-то, на игре это сразу отражается =)

nutz ★★
()

Smalltalk же. В настоящих реализациях это - единственный способ разработки приложений.

yoghurt ★★★★★
()

возможность модифицировать программу и применить изменения на уже работающем коде немедленно, без перезапуска/потери данных. Чтобы сразу увидеть результат модификации.

$ man gdb

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