LINUX.ORG.RU

Лисп или Питон


0

4

Решил изучить новый язк программирования. Все думаю, чего лучше, лисп или питон. Цели - быстро делать мелкие поделки, небольшая гуйня, работа с субд типа скулайта, мускула, постгреса. Кто что подскажет, из знающих?

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

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

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


Весь этот бред эквалентен одной команде tcl:
puts «Hello, world» на апаче + rivet или tclhttpd сервере.

Если и это уже не очевидно, ну тогда хз. Кто-то сошел с ума.

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

А то. Там даже стоит знак качества «Одобрено белками».

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

> Весь этот бред эквалентен одной команде tcl:

puts «Hello, world» на апаче + rivet или tclhttpd сервере.


А, да вы просто не поняли к чему это было. Написать print «Hello, world», можно и на python, только ведь смысл там был не в этом.

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

Или, можно кого-то из местных гуру попросить написать махонький статический серверочек на пистоне.

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

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

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

Ок, окрываем:
http://www.pygtk.org/pygtk2tutorial/ch-GettingStarted.html

1 #!/usr/bin/env python
2
3 # example base.py
4
5 import pygtk
6 pygtk.require('2.0')
7 import gtk
8
9 class Base:
10 def __init__(self):
11 self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
12 self.window.show()
13
14 def main(self):
15 gtk.main()
16
17 print __name__
18 if __name__ == «__main__»:
19 base = Base()
20 base.main()



И что ? И видим подобную же хрень. И это пустое окно.

На tcl окно с кнопкой под gtk:

package require Gnocl
set but1 [gnocl::button \
-text «Hello World!» \
-onClicked {puts «Hello World»} ]



ну и ?

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

Не , меня просто удивляет как это все может быть нравится и еще иметь наглость рекомендовать ЭТО другим.

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

Ты на чём пишешь? Просто интересно.
Вот как на твоём языке выглядит написание асинхронного сервера с диспатчингом и абстракциями для готового проекта, который пишет «hello world»?

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

>Вот как на твоём языке выглядит написание асинхронного сервера с диспатчингом и абстракциями для готового проекта, который пишет «hello world»?

довольно просто:
#apt-get install openacs
))

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

> Сам посчитаешь число строк и лишнего ?

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

Мерятся возможностями/удобством на хеловордах абсолютно бессмысленно.

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

>Вот как на твоём языке выглядит написание асинхронного сервера с диспатчингом и абстракциями для готового проекта, который пишет «hello world»?

Это ты решил twisted опять за уши притянуть?

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


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


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

Я возвращаюсь к исходному:

Python. CL сейчас хорошо на достаточно крупных задачах, но для мелкого скриптинга лучше Python сейчас кажется вообще ничего нет.


Так что ? Ну покажите мне красоту и kiss Python в малом.

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

> Ну и зачем ты «объектно кривляешься» со своим gnocl::button?

изучи видимость имен либ в tcl , а потом умничай и про классы.

elipse ★★★
()

питон конечно

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

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

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

> Я тебе могу привести и пример отличия на

сотни раз не в пользу python.


Это как? Но не суть. Что важно для небольшого скриптинга? Правильно, количество батареек. Для Python больше. И он проще для понимания и освоения.

Ну покажите мне красоту и kiss Python в малом.


Зачем? Никто же вроде не заставляет. Да и малое это не 5 строк, тут вы лучше с Perl-ом посоревнуйтесь, там тоже «малый размер» любят.

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

Что именно глупо ?
Твое зазнайство ?
Или, писать тут программы с бухты-барахты на спор ? - дурных нет,
Ты неспособен видеть сам очевидное, на какой фиг мне тебе доказывать что-то менее очевидное ? Это не бизнес для меня.

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

> Смотрим место второго лиспера и дальше. Сравниваем с С++/Java

И делаем вывод, что программистов на С++/Java намного больше. К.О. просто прыгает от восторга.

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

Ок, вот тебе вебсервер:

from gevent import http

def callback(request):
    print request
    if request.uri == '/':
        request.add_output_header('Content-Type', 'text/html')
        request.send_reply(200, "OK", '<b>hello world</b>')
    else:
        request.add_output_header('Content-Type', 'text/html')
        request.send_reply(404, "Not Found", "<h1>Not Found</h1>")

print 'Serving on 8088...'
http.HTTPServer(('0.0.0.0', 8088), callback).serve_forever()

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

> Да и малое это не 5 строк, тут вы лучше с Perl-ом посоревнуйтесь, там тоже «малый размер» любят.

Т.е., вывернулись и нашли очередную отмазу для плохого дизайна потраха пистона ?
Ok. Добивать не буду . Это не цель была.)

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

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

дизайна потраха пистона ?


Так что не так с дизайном? Я понять никак не могу.

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

>> Ну и зачем ты «объектно кривляешься» со своим gnocl::button?

изучи видимость имен либ в tcl

Это ты к тому, что "::" - это доступ к области видимости? так он и в Си++ такой же.

а потом умничай и про классы.

Button - это объект, так в Gtk. И обертка на Tcl здесь ничего не меняет - ты манипулируешь объектом (и у него есть класс, да).

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

> Дизайн питона - говно.

Начиная от отступов и тупейших «__» повсюду, и заканчивая GIL.

Дизайн Лиспа - говно. Начиная от *ident* повсюду, и заканчивая образом системы на писятмех.

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

Кстати, да, эти страшные палки непонятно для чего нужны

Fischer
() автор топика
Ответ на: комментарий от elipse

Я думаю что ты не понимаешь о чём говоришь.
Ты привёл в пример код на пайтоне, который реализуют задачу. Тебя спросили, как это реализуется на твоём языке. Ты же, вместо примера кода не своём языке, предложил использовать готовый инструмент.
Ты что, и правда думаешь что программисты, знающие пайтон, будут делать _всё_ на пайтоне? Может они ещё и ОС свою на пайтоне используют?
В общем, ты странный человек.

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

> Это ты к тому, что "::" - это доступ к области видимости? так он и в Си++ такой же.

Да.
Можно экспортировать все имена рабочей библиотеки в текущие пространство имен и уже не использовать gnocl::button, а просто писать button.

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

«Меня заставляют форматировать код, меня заставляют писать код как нужно! Это плохо! Никакой свободы!».

Code monkey like you...

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

Нет.

Дизайн питона - объективное говно, а не придуманное ради ответа на ЛОРе.
«__» - объективно говно. Синтаксис на отступах - объективно говно. GIL - тем более. И все, что между ними, по большей части, тоже.

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

> Дизайн питона - объективное говно

Конструктивность твоих доводов поражает.

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

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

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