2010-01-29 3 views
0

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

Я искал в google какое-то время, но я нашел несколько примеров, таких как «Язык программирования o: XML» и «Superx ++», но они, похоже, настолько теоретичны.

Знаете ли вы какой-либо язык программирования на основе XML? Считаете ли вы, что это хорошая идея, чтобы научить эти языки или начать работать в них? Знаете ли вы какой-либо инструмент, который может помочь в создании интерпретатора для этих языков, например XML-парсер?

+2

«Для человека с новым молотом все выглядит как гвоздь». Вы посмотрели на PHP? –

+0

... или в .NET? или JSP? или что-нибудь еще? –

ответ

1

Хорошо ColdFusion очень похож на разметку XML/HTML/SGML ... на основе тегов. MXML также является языком, основанным на тегах, и используется в сочетании с ActionScript, но я компилируется в Flash (.swf)

2

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

8

XSLT - это язык преобразования на основе XML, но я не могу сказать, что это очень забавно или просто в использовании.

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

Я бы предложил потратить время на изучение другого языка (возможно, python?), Я сомневаюсь, что вы когда-нибудь оглянетесь назад.

+0

как mxml, так и xaml для представления данных, я ищу язык xml PROGRAMMING ... и правила python – 2010-01-29 04:37:56

+2

@Gabriel: он дал вам один, XSLT. –

+0

XSLT, как бы то ни было, является функциональным функциональным языком программирования (и нет, это не опечатка). –

1

XML и т. Д. Предназначены для выражения иерархических данных (относительно) лаконично. XML хорошо при этом и пользуется большим успехом.

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

Современные языки более многословны, потому что мы требуем от них быть, и конечной целью любого производственного языка, то есть всего, что не является научным проектом freakin или применением студента-градиента, является быстрое выполнение поставленных задач. Как инженеры, нам повезло испытать разрушение, когда резина встречает дорогу, и посмотреть, что работает против того, что звучит круто. Языки программирования на основе XML звучат аккуратно, но, по большей части, неадекватны. (Для тех, кто будет спорить: предоставим XML-обзор симулятора Apollo 11, и мы поговорим).

3

Я не совсем понимаю преимущество. Либо что-то есть описательный язык (язык разметки a.k.a.), либо это «настоящий язык программирования», который обычно означает, что он имеет такие функции, как переменные, if...else и некоторые формы циклов. XSLT вроде бы посередине, но все же более описателен, чем что-либо еще. Если вы хотите изучить «реальное программирование», я не вижу преимущества ввода большего количества кода в некоторых специализированных синтаксисах XML по сравнению с любым другим традиционным синтаксисом.

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

<xml:loop var="x" start-value="0" condition="<10" post="x++"> 
    .... 
</xml:loop> 

или

for (var x; x < 10; x++) { 
    .... 
} 

действительно не делает, что большая разница. На самом деле, я предпочитаю более короткий синтаксис.

+0

Я использую MathCAD для своих инженерных работ. Возможность использования индексированных имен var очень ценна для меня. Я должен включать много информации в имя var, чтобы отличать один var от другого. Так что после MathCAD я не могу использовать другие языки, даже специализированные, такие как Mathematica и MatLab.Maplesoft Maple имеют почти одинаковые или даже более богатые возможности именования. – SergeyFomin

1

Я помню некоторые hullabaloo около Water a назад. Лично, язык программирования на основе XML кажется мне кошмаром.

2

В мире полно ненавистников XSLT, но я не один из них. Это одна из самых полезных технологий, которые я узнал за последнее десятилетие.

Он также имеет ограниченный объем; в то время как, как показал Майкл Кей в своем XSLT Programmer Reference, в XSLT можно реализовать алгоритм рыцарского тура, нет практических оснований для этого.

1

XProc не совсем то, что вы хотите, но оно может быть близко. Это Язык XML-конвейера - язык описания операций, которые должны выполняться на XML-документах.

От W3C's XProc spec:

«трубопровод XML-определяет последовательность операций, которые должны выполняться на ноль или более документов XML Трубопроводы обычно принимают ноль или более XML-документы в качестве входных данных и производить ноль или более XML-документы в качестве выхода. Трубопроводы состоят из простых шагов, которые выполняют атомарные операции над документами XML и строятся аналогично операторам условных выражений, итераций и исключений, которые контролируют, какие шаги выполняются ».

Достоинства: Это в XML и содержит некоторые элементы реального языка программирования (например, условия, циклы).

Против: Это не настоящий язык программирования и предназначен для работы с документами XML.

0

XQuery и xqib.

XQuery имеет тот же потенциал, что и xslt, но он по-прежнему предпочитает использовать xslt при преобразовании больших файлов. Xqib - это проект, показывающий, что он может использоваться как язык всей системы. Просто введите xqib в google, а расширение end должно быть .org.

Смежные вопросы