Re: Saxon Blog article: "Functions, Function Calls, Function Items"

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: Saxon Blog article: "Functions, Function Calls, Function Items"

Dimitre Novatchev
I am writing here, because the link to "sign in" in order to leave a
comment for the blog-article, hangs indefinitely -- both on IE and
Chrome.

I wanted to say this:

It is awesome that such major refactoring of the different legacy
approaches towards functions, is being undertaken. I wish the team
success and am expecting some new shared experience about the
redesign.

I hope that this is a good opportunity to incorporate a long-waited
feature (which BaseX, also Java-based, implemented almost two years
ago) -- that of optimizing tail-calls in the case when the function in
the tail-call may not be confirmed to be the same as the function in
which the tail-call is located.

--
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? :)
-------------------------------------
I finally figured out the only reason to be alive is to enjoy it.

------------------------------------------------------------------------------
Dive into the World of Parallel Programming. The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net/
_______________________________________________
saxon-help mailing list archived at http://saxon.markmail.org/
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help 
Reply | Threaded
Open this post in threaded view
|

Re: Saxon Blog article: "Functions, Function Calls, Function Items"

O'Neil Delpratt
Hi Dimitre,

Thanks for your comments.

Just to let you know that I have changed the commenting feature on the blog site to use the livefyre app, which now allows you to leave your comment at the end of the blog post.
The Livefyre app we have been using for sometime now but the javascript seems to have been missing from the templates for some reason.

kind regards,

O’Neil

> On 2 Feb 2015, at 18:31, Dimitre Novatchev <[hidden email]> wrote:
>
> I am writing here, because the link to "sign in" in order to leave a
> comment for the blog-article, hangs indefinitely -- both on IE and
> Chrome.
>
> I wanted to say this:
>
> It is awesome that such major refactoring of the different legacy
> approaches towards functions, is being undertaken. I wish the team
> success and am expecting some new shared experience about the
> redesign.
>
> I hope that this is a good opportunity to incorporate a long-waited
> feature (which BaseX, also Java-based, implemented almost two years
> ago) -- that of optimizing tail-calls in the case when the function in
> the tail-call may not be confirmed to be the same as the function in
> which the tail-call is located.
>
> --
> 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? :)
> -------------------------------------
> I finally figured out the only reason to be alive is to enjoy it.
>
> ------------------------------------------------------------------------------
> Dive into the World of Parallel Programming. The Go Parallel Website,
> sponsored by Intel and developed in partnership with Slashdot Media, is your
> hub for all things parallel software development, from weekly thought
> leadership blogs to news, videos, case studies, tutorials and more. Take a
> look and join the conversation now. http://goparallel.sourceforge.net/
> _______________________________________________
> saxon-help mailing list archived at http://saxon.markmail.org/
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/saxon-help 

-------------------------------
O'Neil Delpratt
Software Developer, Saxonica Limited Email: [hidden email]
Tel: +44 118 946 5894
Web: http://www.saxonica.com
Saxonica Community site: http://dev.saxonica.com
Bug tracking site: https://saxonica.plan.io/




------------------------------------------------------------------------------
Dive into the World of Parallel Programming. The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net/
_______________________________________________
saxon-help mailing list archived at http://saxon.markmail.org/
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help 
Reply | Threaded
Open this post in threaded view
|

Re: Saxon Blog article: "Functions, Function Calls, Function Items"

Michael Kay
In reply to this post by Dimitre Novatchev
By the way, the article is here:

http://dev.saxonica.com/blog/mike/2015/02/functions-function-calls-function-items.html

We currently handle non-local tail calls for templates, but not for functions, so it can be done, but it's very clumsy. And it doesn't work when generating bytecode - achieving that is really tough, because we would essentially have to implement our own stack rather than using the JVM stack.

Michael Kay
Saxonica
[hidden email]
+44 (0) 118 946 5893




On 2 Feb 2015, at 18:31, Dimitre Novatchev <[hidden email]> wrote:

> I am writing here, because the link to "sign in" in order to leave a
> comment for the blog-article, hangs indefinitely -- both on IE and
> Chrome.
>
> I wanted to say this:
>
> It is awesome that such major refactoring of the different legacy
> approaches towards functions, is being undertaken. I wish the team
> success and am expecting some new shared experience about the
> redesign.
>
> I hope that this is a good opportunity to incorporate a long-waited
> feature (which BaseX, also Java-based, implemented almost two years
> ago) -- that of optimizing tail-calls in the case when the function in
> the tail-call may not be confirmed to be the same as the function in
> which the tail-call is located.
>
> --
> 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? :)
> -------------------------------------
> I finally figured out the only reason to be alive is to enjoy it.


------------------------------------------------------------------------------
Dive into the World of Parallel Programming. The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net/
_______________________________________________
saxon-help mailing list archived at http://saxon.markmail.org/
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help 
Reply | Threaded
Open this post in threaded view
|

Re: Saxon Blog article: "Functions, Function Calls, Function Items"

Dimitre Novatchev
In reply to this post by O'Neil Delpratt
Thanks O'Neil,

I wrote my comment here:

   http://fyre.it/n0OAwG.4



Cheers,
Dimitre

On Tue, Feb 3, 2015 at 2:23 AM, O'Neil Delpratt <[hidden email]> wrote:

> Hi Dimitre,
>
> Thanks for your comments.
>
> Just to let you know that I have changed the commenting feature on the blog site to use the livefyre app, which now allows you to leave your comment at the end of the blog post.
> The Livefyre app we have been using for sometime now but the javascript seems to have been missing from the templates for some reason.
>
> kind regards,
>
> O’Neil
>
>> On 2 Feb 2015, at 18:31, Dimitre Novatchev <[hidden email]> wrote:
>>
>> I am writing here, because the link to "sign in" in order to leave a
>> comment for the blog-article, hangs indefinitely -- both on IE and
>> Chrome.
>>
>> I wanted to say this:
>>
>> It is awesome that such major refactoring of the different legacy
>> approaches towards functions, is being undertaken. I wish the team
>> success and am expecting some new shared experience about the
>> redesign.
>>
>> I hope that this is a good opportunity to incorporate a long-waited
>> feature (which BaseX, also Java-based, implemented almost two years
>> ago) -- that of optimizing tail-calls in the case when the function in
>> the tail-call may not be confirmed to be the same as the function in
>> which the tail-call is located.
>>

> Saxonica Community site: http://dev.saxonica.com
> Bug tracking site: https://saxonica.plan.io/
>
>
>

------------------------------------------------------------------------------
Dive into the World of Parallel Programming. The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net/
_______________________________________________
saxon-help mailing list archived at http://saxon.markmail.org/
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help 
Reply | Threaded
Open this post in threaded view
|

Re: Saxon Blog article: "Functions, Function Calls, Function Items"

Dimitre Novatchev
In reply to this post by Michael Kay
> By the way, the article is here:
>
> http://dev.saxonica.com/blog/mike/2015/02/functions-function-calls-function-items.html
>
> We currently handle non-local tail calls for templates, but not for functions, so it can be done, but it's very clumsy. And it doesn't work when generating bytecode - achieving that is really tough, because we would essentially have to implement our own stack rather than using the JVM stack.
>
> Michael Kay


 I understand that there may be some difficulties in implementing this feature.

At the same time, we have the example of BaseX, who implemented this
seemingly smoothly.

And, I believe the effort is warranted, because it makes an enormous
difference with and without optimizing tail calls.

I believe, that "Saxon can do it"


Cheers,
Dimitre

On Tue, Feb 3, 2015 at 2:39 AM, Michael Kay <[hidden email]> wrote:

> By the way, the article is here:
>
> http://dev.saxonica.com/blog/mike/2015/02/functions-function-calls-function-items.html
>
> We currently handle non-local tail calls for templates, but not for functions, so it can be done, but it's very clumsy. And it doesn't work when generating bytecode - achieving that is really tough, because we would essentially have to implement our own stack rather than using the JVM stack.
>
> Michael Kay
> Saxonica
> [hidden email]
> +44 (0) 118 946 5893
>
>
>
>
> On 2 Feb 2015, at 18:31, Dimitre Novatchev <[hidden email]> wrote:
>
>> I am writing here, because the link to "sign in" in order to leave a
>> comment for the blog-article, hangs indefinitely -- both on IE and
>> Chrome.
>>
>> I wanted to say this:
>>
>> It is awesome that such major refactoring of the different legacy
>> approaches towards functions, is being undertaken. I wish the team
>> success and am expecting some new shared experience about the
>> redesign.
>>
>> I hope that this is a good opportunity to incorporate a long-waited
>> feature (which BaseX, also Java-based, implemented almost two years
>> ago) -- that of optimizing tail-calls in the case when the function in
>> the tail-call may not be confirmed to be the same as the function in
>> which the tail-call is located.

------------------------------------------------------------------------------
Dive into the World of Parallel Programming. The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net/
_______________________________________________
saxon-help mailing list archived at http://saxon.markmail.org/
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help