XAML Describes Data in a Concise, but Human and Machine Comprehensible, Way
In theory every new language is something you need to learn. Quite many people would
prefer to speak many / multiple languages - as it's considered as language richness. This exists and it's
related to natural languages, but not necessary to programming languages.
I by myself have programming in quite many languages including batch files, perl, lua, python,
c++ and c#. Do I remember all of them ? No, I can switch using another language, but it takes
time. Just writing now in C#, then switch to C++, you can easily mix up is it NULL, null, nil or
nullptr depending on programming language and it's "dialect". (c++ normal, c++ managed)
xaml is xml "dialect". Is it easy to learn ? based on quite many question on other forums I would say no.
Does it replace C# ? No.
Answer is quite obvious - I would prefer to have one programming language, which is well
designed (C# - e.g. data type reflection), has a good peformance (like C++) and scriptable
(C#-script, C++/cling or even better)
Currently C++ and C# don't fully satisfy my needs, but xaml is some odd data format, which I
would not consider as worth of learning (only wrapping around, and hiding it from developer's eyes)
At the end I would like to recombine natural language (spoken) with programming language
(artificially constructed language) into same one language -
so it can be used for communication and by programmers - this is later on into future, when
programming language "architecture" or "design patterns" will start to be documented.
- XAML allows for drawing Scalable Vector Graphics (SVG) Images and transformations.
- ...
XAML indeed introduces some new improved features over winforms, so it's worth of considering
to use it. But eventually if you want you user interface to become fully dynamic -
xaml needs to be replaced by similar run-time code.
Eventually user interface should be simple to use - and that means minimum set of controls,
controls looks similar ( cancel, ok , shortcuts, same width / height and so on )
which means that UI can be more or less auto-generated.
Btw - is it possible to embedd into xaml C# code directly ? Meta data, string, comments ?
It's sometimes neat to misuse or abuse language in way noone imagined it to be used.
Perl does this a lot, but I prefer somehow more clean syntax rather than cryptic one.
But C# versus xaml - I would chose C#.