Re: SaxonCS 11.0 is available

Dimitre Novatchev <[email protected]> Mon, 11 Oct 2021 06:35:35 -0700
Newsgroups gmane.text.xml.saxon.help
Message-ID <CAK4KnZfFXx+F2NAKm5Q_xvs+rWO-8XPL6dd7oAd-pfYps_OHmA@mail.gmail.com>
--===============4287656428395279623==
Content-Type: multipart/alternative; boundary="0000000000005f5a4405ce13cee6"

--0000000000005f5a4405ce13cee6
Content-Type: text/plain; charset="UTF-8"

Some examples of transpilers:

> 1. Emscripten: Transpiles C/C++ to JavaScript
> 2. Babel: Transpiles ES6+ code to ES5 (ES6 and ES5 are different versions
or generations of the JavaScript language)

Typescript has been a well-known example of a transpiler that changed
dramatically how people approach programming on the front-end.

Current versions of Google's Angular are written in Typescript.

Deno was the next step from Node -- again by embracing Typescript.

Just my 2c.  :)

Dimitre


On Mon, Oct 11, 2021 at 5:23 AM Roger L Costello <[email protected]> wrote:

> > SaxonCS is therefore built by generating C# from the Java source code of
> SaxonJ
> > using a custom transpiler, written in XSLT.
>
> What is a transpiler?
>
> I learned a new word today:
>
> Compiler: is an umbrella term to describe a program that takes source code
> written in one language and produce a (or many) output file in some other
> language. In practice we mostly use this term to describe a compiler such
> as gcc which takes in C code as input and produces a binary executable
> (machine code) as output.
>
> Transpilers are also known as source-to-source compilers. So in essence
> they are a subset of compilers which take in a source code file and convert
> it to another source code file in some other language or a different
> version of the same language. The ouput is generally understandable by a
> human. This output still has to go through a compiler or interpreter to be
> able to run on the machine.
>
> Some examples of transpilers:
>
> 1. Emscripten: Transpiles C/C++ to JavaScript
> 2. Babel: Transpiles ES6+ code to ES5 (ES6 and ES5 are different versions
> or generations of the JavaScript language)
>
> https://stackoverflow.com/questions/44931479/compiling-vs-transpiling
>
> /Roger
>
> -----Original Message-----
> From: Michael Kay <mike-JkSD5nQpfvpWk0Htik3J/[email protected]>
> Sent: Wednesday, October 6, 2021 9:55 AM
> To: Mailing list for the SAXON XSLT and XQuery processor <
> [email protected]>
> Subject: [EXT] [saxon] SaxonCS 11.0 is available
>
> We are pleased to announce the release of SaxonCS-EE 11.0 - Saxon
> Enterprise Edition for .NET 5.
>
> Details:
>
> Documentation: https://www.saxonica.com/documentation11/index.html
> Download: https://www.saxonica.com/download/dotnet.xml (or search for
> SaxonCS on nuget)
>
> Previous products for .NET were built using IKVM to convert the Java
> bytecode of the Java product (which we are now calling SaxonJ). IKVM
> doesn't work with .NET Core or .NET 5, so we had to come up with a new
> approach; SaxonCS is therefore built by generating C# from the Java source
> code of SaxonJ using a custom transpiler, written in XSLT.
>
> As well as being our first product for .NET 5, this is also the first
> product built from the version 11 code base (SaxonJ 11 will follow). There
> are lots of new features, described in detail in the change history section
> of the documentation, but for most users support for .NET 5 will be the
> main reason for adoption. We've tested the product on .NET 5 running on
> Windows, MacOS, and Linux.
>
> Licensing: being Enterprise Edition, a license key is required. Existing
> license keys will work provided they have current upgrade rights. You can
> also get a 30-day evaluation license in the usual way. However, we're
> making a change to the licensing at the same time: from Saxon 11, we plan
> to offer term and/or subscription licenses only, rather than perpetual
> licenses. The software is now in a mature phase where many users are
> looking for stability and support rather than new features, and we feel
> that perpetual licenses encourage people to stay on old releases until they
> hit a support problem, at which point it's hard for us to offer assistance.
> Much of the industry has moved to term and subscription licensing, and we
> think this will work better. We'll be updating the online shop over the
> next few days.
>
> Compatibility and transition: the API for SaxonCS follows the design of
> the old .NET API closely, but not slavishly. When we've seen where it can
> be improved by breaking compatibility, we've improved it. (For example,
> callbacks are typically now implemented as delegates rather than
> interfaces.) So some reworking of existing applications will be needed, but
> we hope it won't be onerous. There are a few areas in which we haven't
> (yet) replicated the functionality of the old .NET product: the most
> obvious is localization (number and date formatting), and we'll be
> addressing this in later releases.
>
> Performance: initial results are very encouraging, but slightly
> inconsistent. Some things are faster than SaxonJ, some are slower, and we
> haven't yet been able to establish a clear pattern. Please try it out on
> your own workload and let us know how it goes.
>
> Michael Kay
> Saxonica
>
> _______________________________________________
> saxon-help mailing list archived at http://saxon.markmail.org/
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/saxon-help
>
>
> _______________________________________________
> saxon-help mailing list archived at http://saxon.markmail.org/
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/saxon-help
>


-- 
Cheers,
Dimitre Novatchev
---------------------------------------
Truly great madness cannot be achieved without significant intelligence.
---------------------------------------
To invent, you need a good imagination and a pile of junk
-------------------------------------
Never fight an inanimate object
-------------------------------------
To avoid situations in which you might make mistakes may be the
biggest mistake of all
------------------------------------
Quality means doing it right when no one is looking.
-------------------------------------
You've achieved success in your field when you don't know whether what
you're doing is work or play
-------------------------------------
To achieve the impossible dream, try going to sleep.
-------------------------------------
Facts do not cease to exist because they are ignored.
-------------------------------------
Typing monkeys will write all Shakespeare's works in 200yrs.Will they write
all patents, too? :)
-------------------------------------
Sanity is madness put to good use.
-------------------------------------
I finally figured out the only reason to be alive is to enjoy it.

--0000000000005f5a4405ce13cee6
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div>Some examples of transpilers:<br><br=
>&gt; 1. Emscripten: Transpiles C/C++ to JavaScript<br>&gt; 2. Babel: Trans=
piles ES6+ code to ES5 (ES6 and ES5 are different versions or generations o=
f the JavaScript language)<br></div><div><br></div>Typescript has been a we=
ll-known example of a transpiler that changed dramatically how people appro=
ach programming on the front-end.<br><br>Current versions of Google&#39;s A=
ngular are written in Typescript.=C2=A0<div><br></div><div>Deno was the nex=
t step from Node -- again by embracing Typescript.</div><div><br></div><div=
>Just my 2c.=C2=A0 :)<br><br>Dimitre<br><br></div></div><br><div class=3D"g=
mail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Mon, Oct 11, 2021 at 5=
:23 AM Roger L Costello &lt;<a href=3D"mailto:[email protected]">costello@=
mitre.org</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=
=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding=
-left:1ex">&gt; SaxonCS is therefore built by generating C# from the Java s=
ource code of SaxonJ <br>
&gt; using a custom transpiler, written in XSLT.<br>
<br>
What is a transpiler?<br>
<br>
I learned a new word today:<br>
<br>
Compiler: is an umbrella term to describe a program that takes source code =
written in one language and produce a (or many) output file in some other l=
anguage. In practice we mostly use this term to describe a compiler such as=
 gcc which takes in C code as input and produces a binary executable (machi=
ne code) as output.<br>
<br>
Transpilers are also known as source-to-source compilers. So in essence the=
y are a subset of compilers which take in a source code file and convert it=
 to another source code file in some other language or a different version =
of the same language. The ouput is generally understandable by a human. Thi=
s output still has to go through a compiler or interpreter to be able to ru=
n on the machine.<br>
<br>
Some examples of transpilers:<br>
<br>
1. Emscripten: Transpiles C/C++ to JavaScript<br>
2. Babel: Transpiles ES6+ code to ES5 (ES6 and ES5 are different versions o=
r generations of the JavaScript language)<br>
<br>
<a href=3D"https://stackoverflow.com/questions/44931479/compiling-vs-transp=
iling" rel=3D"noreferrer" target=3D"_blank">https://stackoverflow.com/quest=
ions/44931479/compiling-vs-transpiling</a><br>
<br>
/Roger<br>
<br>
-----Original Message-----<br>
From: Michael Kay &lt;<a href=3D"mailto:mike-JkSD5nQpfvpWk0Htik3J/[email protected]" target=3D"_blank=
">mike-JkSD5nQpfvpWk0Htik3J/[email protected]</a>&gt; <br>
Sent: Wednesday, October 6, 2021 9:55 AM<br>
To: Mailing list for the SAXON XSLT and XQuery processor &lt;<a href=3D"mai=
lto:[email protected]" target=3D"_blank">[email protected]=
urceforge.net</a>&gt;<br>
Subject: [EXT] [saxon] SaxonCS 11.0 is available<br>
<br>
We are pleased to announce the release of SaxonCS-EE 11.0 - Saxon Enterpris=
e Edition for .NET 5.<br>
<br>
Details:<br>
<br>
Documentation: <a href=3D"https://www.saxonica.com/documentation11/index.ht=
ml" rel=3D"noreferrer" target=3D"_blank">https://www.saxonica.com/documenta=
tion11/index.html</a><br>
Download: <a href=3D"https://www.saxonica.com/download/dotnet.xml" rel=3D"n=
oreferrer" target=3D"_blank">https://www.saxonica.com/download/dotnet.xml</=
a> (or search for SaxonCS on nuget)<br>
<br>
Previous products for .NET were built using IKVM to convert the Java byteco=
de of the Java product (which we are now calling SaxonJ). IKVM doesn&#39;t =
work with .NET Core or .NET 5, so we had to come up with a new approach; Sa=
xonCS is therefore built by generating C# from the Java source code of Saxo=
nJ using a custom transpiler, written in XSLT.<br>
<br>
As well as being our first product for .NET 5, this is also the first produ=
ct built from the version 11 code base (SaxonJ 11 will follow). There are l=
ots of new features, described in detail in the change history section of t=
he documentation, but for most users support for .NET 5 will be the main re=
ason for adoption. We&#39;ve tested the product on .NET 5 running on Window=
s, MacOS, and Linux.<br>
<br>
Licensing: being Enterprise Edition, a license key is required. Existing li=
cense keys will work provided they have current upgrade rights. You can als=
o get a 30-day evaluation license in the usual way. However, we&#39;re maki=
ng a change to the licensing at the same time: from Saxon 11, we plan to of=
fer term and/or subscription licenses only, rather than perpetual licenses.=
 The software is now in a mature phase where many users are looking for sta=
bility and support rather than new features, and we feel that perpetual lic=
enses encourage people to stay on old releases until they hit a support pro=
blem, at which point it&#39;s hard for us to offer assistance. Much of the =
industry has moved to term and subscription licensing, and we think this wi=
ll work better. We&#39;ll be updating the online shop over the next few day=
s.<br>
<br>
Compatibility and transition: the API for SaxonCS follows the design of the=
 old .NET API closely, but not slavishly. When we&#39;ve seen where it can =
be improved by breaking compatibility, we&#39;ve improved it. (For example,=
 callbacks are typically now implemented as delegates rather than interface=
s.) So some reworking of existing applications will be needed, but we hope =
it won&#39;t be onerous. There are a few areas in which we haven&#39;t (yet=
) replicated the functionality of the old .NET product: the most obvious is=
 localization (number and date formatting), and we&#39;ll be addressing thi=
s in later releases.<br>
<br>
Performance: initial results are very encouraging, but slightly inconsisten=
t. Some things are faster than SaxonJ, some are slower, and we haven&#39;t =
yet been able to establish a clear pattern. Please try it out on your own w=
orkload and let us know how it goes.<br>
<br>
Michael Kay<br>
Saxonica<br>
<br>
_______________________________________________<br>
saxon-help mailing list archived at <a href=3D"http://saxon.markmail.org/" =
rel=3D"noreferrer" target=3D"_blank">http://saxon.markmail.org/</a><br>
<a href=3D"mailto:[email protected]" target=3D"_blank">saxon=
[email protected]</a><br>
<a href=3D"https://lists.sourceforge.net/lists/listinfo/saxon-help" rel=3D"=
noreferrer" target=3D"_blank">https://lists.sourceforge.net/lists/listinfo/=
saxon-help</a> <br>
<br>
<br>
_______________________________________________<br>
saxon-help mailing list archived at <a href=3D"http://saxon.markmail.org/" =
rel=3D"noreferrer" target=3D"_blank">http://saxon.markmail.org/</a><br>
<a href=3D"mailto:[email protected]" target=3D"_blank">saxon=
[email protected]</a><br>
<a href=3D"https://lists.sourceforge.net/lists/listinfo/saxon-help" rel=3D"=
noreferrer" target=3D"_blank">https://lists.sourceforge.net/lists/listinfo/=
saxon-help</a> <br>
</blockquote></div><br clear=3D"all"><div><br></div>-- <br><div dir=3D"ltr"=
 class=3D"gmail_signature"><div>Cheers,</div><div>Dimitre Novatchev</div><d=
iv>---------------------------------------</div><div>Truly great madness ca=
nnot be achieved without significant intelligence.</div><div>--------------=
-------------------------</div><div>To invent, you need a good imagination =
and a pile of junk</div><div>-------------------------------------</div><di=
v>Never fight an inanimate object</div><div>-------------------------------=
------</div><div>To avoid situations in which you might make mistakes may b=
e the</div><div>biggest mistake of all</div><div>--------------------------=
----------</div><div>Quality means doing it right when no one is looking.</=
div><div>-------------------------------------</div><div>You&#39;ve achieve=
d success in your field when you don&#39;t know whether what you&#39;re doi=
ng is work or play</div><div>-------------------------------------</div><di=
v>To achieve the impossible dream, try going to sleep.</div><div>----------=
---------------------------</div><div>Facts do not cease to exist because t=
hey are ignored.</div><div>-------------------------------------</div><div>=
Typing monkeys will write all Shakespeare&#39;s works in 200yrs.Will they w=
rite all patents, too? :)</div><div>-------------------------------------</=
div><div>Sanity is madness put to good use.</div><div>---------------------=
----------------</div><div>I finally figured out the only reason to be aliv=
e is to enjoy it.</div><div>=C2=A0</div></div></div>

--0000000000005f5a4405ce13cee6--


--===============4287656428395279623==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


--===============4287656428395279623==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
saxon-help mailing list archived at http://saxon.markmail.org/
[email protected]
https://lists.sourceforge.net/lists/listinfo/saxon-help 
--===============4287656428395279623==--