LINUX.ORG.RU

Занимаясь веб-девелопментом


0

1

Занимаясь веб-девелопментом, я задумался: зачем столько разнородных средств? Ведь можно объединить всё в один язык. И описание, и логику - клиентскую и серверную. Языки разметки вполне годятся для программирования. Вот, например, вычимление 2 + 2 * 2:

<+>2 <*>2 2</*></+>

Разделение задачь ведь!
Иначе не удобно. И имхо есть уже нормальное объединение - lamp.

impr
()

Языки разметки вполне годятся для программирования.

Денис, перелогинься!

flareguner
()

Не дай БГ это кто-нибудь реализует.

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

И имхо есть уже нормальное объединение - lamp.

Кому как. Мне вот больше LASC нравится...

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от impr

> И имхо есть уже нормальное объединение - lamp.

Ты в своём уме? Четыре громадных сущности - ОС, HTTP-сервер, SQL-сервер, интерпретатор, - вместо элегантного универсального решения? В котором сами собой воплощаются клиент-сервер, хранилище и процессор, т.е. ничего вообще делать не надо.

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

Ваше «элегантное» решение поражает своей монструозностью.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от gestapochki

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

impr
()

А если помечтать, то было бы достаточно удоб^ чёрт, да там ооп не было бы, или похоже было бы на страшное подобие ооп в теперешнем html. Нет, не нужно!

impr
()

> <+>2 <*>2 2</*></+>
Классический пример S-expressions done wrong

x3al ★★★★★
()

OMFG!

< <+>2 <*>2 2</*></+>

Как хорошо, что ЭТО останется лишь плодом твоей больной фантазии.

Chaser_Andrey ★★★★★
()

> <+>2 <*>2 2</*></+>

А разве ColdFusion не есть то о чём ты говоришь? Я его не щупал, но там что-то вроде этого.

Кстати, может «mv theme web-development» ?

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

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

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

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

Ахаха. Глянь lisp.

Как ты сказал, «разметочные вычисления»?

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

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

yoghurt ★★★★★
()

Вы говорите что HTML невозможно программировать. По-моему вы просто жутко наелись конфет... (c)

luethus
()

>2 + 2 * 2
Есть очень удобный язык разметки:)

<addition> 
  <member>
    2
  </member>

  <member>
    <multiplication>
      <member>
        2
      </member>
      <member>
        2
      </member>
    </multiplication>
  </member>
</addition>

aydar ★★★★★
()

Теперь, если привести это к человеческому синтаксису, то получится lisp:

(+ 2 (* 2 2))
Reset ★★★★★
()

>Ведь можно объединить всё в один язык. И описание, и логику - клиентскую и серверную.

Java для этого и создавалась.

drakmail ★★★★
()

> Языки разметки вполне годятся для программирования

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

Вот, например, вычимление 2 + 2 * 2

Разметить разметили, а считать кто будет?

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

> > Вот, например, вычимление 2 + 2 * 2

Разметить разметили, а считать кто будет?

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

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

Разметить разметили, а считать кто будет?

Интерпретатор на XSLT ^-)

Begemoth ★★★★★
()

Угу, а теперь посчитай, сколько времени у тебя займет, чтобы написать вот такую вот формулу:

(2+2)/(2*3 + sqrt(7+exp(2-3)))

У меня ушло 7-8 секунд.

trex6 ★★★★★
()

>зачем столько разнородных средств? Ведь можно объединить всё в один язык

Зачем столько разных ножей, вилок, ложек, отвёрток, ножниц? Ведь всё можно объединить в один швейцарский нож!

KRoN73 ★★★★★
()

Верстай @ Программируй

(html
	(head
		(title "Hello, World!")
		(style
			(selector "body"
				(margin "1em 2em")
				(background-color "#999")
			)
			(selector "header"
				(background-color "#ccf")
			)
			(selector "article"
				(background-color "#fff")
			)
			(selector "p:first-line"
				(margin-left "1em")
			)
		)
	)
	(body
		(div (class "header")
			(h1 "Hello, World!")
		)
		(div (class "article")
			(h2 "Lorem")
			(p 
				"Lorem "
				(a href("ipsum.lisp") "ipsum")
				" dolor sic amet consectetur."
			)
			(p "Lorem ipsum dolor sic amet consectetur.")
			(p "Lorem ipsum dolor sic amet consectetur.")
		)
	)
)
static_lab ★★★★★
()
Ответ на: комментарий от KRoN73

А точка в конце не нужна? Оно ж вывестись куда то должно.
Ну это если я правильно книжку с палачом вспоминаю =)

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

>Оно ж вывестись куда то должно.

Не обязательно. В том ответе, который я цитировал, вывода не было :)

...

А если вывод - то да, точку добавить.

Ну это если я правильно книжку с палачом вспоминаю =)


Это который EXECUTE? :)

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

блин, ошибся со ссылкой, должно быть, конечно же

(a (href "ipsum.lisp") "ipsum")
static_lab ★★★★★
()

<+>2 <*>2 2</*></+>

Браво! Это отличная идея. Ты на верном пути. Осталось чуть поменять синтаксис. Согласись, что

 (+ 2 (* 2 2)) 

выглядит гораздо лучше.

ugoday ★★★★★
()
Ответ на: :) от aydar

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

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

Безотносительно конкретного поста - s-выражения вместо вонючего SGML и какой-нибудь parenscript вместо вонючего жабаскрипта - это было бы очень круто.

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

> s-выражения вместо вонючего SGML и какой-нибудь parenscript

вместо вонючего жабаскрипта - это было бы очень круто.


Нет. Я пробовал так работать и получалось совсем не круто. Круто это шаблоны (без s-выражений) и JavaScript там, где он нужен.

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

>Нет. Я пробовал так работать и получалось совсем не круто.
В смысле пробовал работать? Я говорю, если бы в браузерах вместо SGML и javascript(которые чтобы распарсить и/или сгенерировать, надо три раза обосраться - не зря браузеры так тормозят и текут изо всех дыр памятью) s-выражения использовали и parenscript, было бы круто и просто работать с этим. Но в данный момент времени ими как бы не пользуются. Шаблоны это вообще перпендикулярно этому.

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

>Это который EXECUTE?
Он самый. Но даже в детстве, когда книга читалась, она ЕМНИП была напрочь оторвана от практики. Хотя сейчас,через годы, оно конечно воспринялось бы наверное по другому =)

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

>Но даже в детстве, когда книга читалась, она ЕМНИП была напрочь оторвана от практики

А тогда все книжки такие были. Учили «зачем» и «почему», а не «как» :) Это уже потом приоритеты сменились и пошли издания «какую кнопку нужно нажать, чтобы шрифт стал жирным».

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

АФАИК JavaScript изначально s-exp и использовал, но потом из-за рынка и договоров с Саном, язык переделали. Потому небось и «Parenscript is different from almost all other „language X“ to JavaScript translators in that it imposes almost no overhead»

А использовать s-exp для описания данных, в которых кода быть вроде не должно, это разве нормально было бы?

Ну и да, «JavaScript was originally developed by Brendan Eich of Netscape under the name Mocha»...

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

> Я говорю, если бы в браузерах вместо SGML и javascript

А что, собственно, не так с SGML и JavaScript?

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

А JavaScript отличный язык, который хорошо справляется с стоящими перед ним задачами. В чём был бы профит от parenscript или чего-либо подобного на эту тему вместо него не вполне ясно.

которые чтобы распарсить и/или сгенерировать, надо три раза

обосраться - не зря браузеры так тормозят и текут изо всех


дыр памятью



Да ну, фигня. Тормозит и течёт активно кажется только один браузер. Но там дело вовсе не в html и JavaScript.

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

>А тогда все книжки такие были.
Про форт читалось легко, с картинками же! То ли дело Страуструп, по 2му кажется изданию которого я пытался осилить С++ после бейсика... Поломал, сволочь, детскую психику =)

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

>А использовать s-exp для описания данных, в которых кода быть вроде не должно, это разве нормально было бы
А чо бы нет? Наипростейший и наиудобнейший текстовый формат сериализации произвольных структур.
В SGML одна только парность тэгов вон сколько говна и багов породила.

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

> Наипростейший и наиудобнейший текстовый формат сериализации

произвольных структур


Это ты про JSON? Ну он то тоже на роль языка разметки не годится.

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

>То ли дело Страуструп

Я начал с какой-то нашей авторши... Не помню уже фамилию её... Несколько месяцев не мог понять, что такое объекты, зачем они вообще нужны и как с ними работать. Потом как-то внезапно дошло, что это по сути те же «структуры с функциями», только с private доступом по умолчанию и сразу всё стало ясно. А когда мне Страуструп попался после - это было, по сравнению, просто лёгкое чтиво для отдыха :D

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

>А что, собственно, не так с SGML и JavaScript?
У JS в синтаксисе, в основном, проблемы.
А SGML это невыносимое говно, всю говеность которого в двух словах и не описать. Я уже выше сказал, например - теги. Опять же, дебильный заковыристый синтаксис.

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


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

А JavaScript отличный язык, который хорошо справляется с стоящими перед ним задачами. В чём был бы профит от parenscript или чего-либо подобного на эту тему вместо него не вполне ясно.


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

Тормозит и течёт активно кажется только один браузер.

Кажется, все - IE, FF, Opera, Chrome.

Но там дело вовсе не в html и JavaScript.

Я бы сказал - не только в html и js. Еще в том, что написаны на С++.

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