1. speed of eu 2.5 + dynamic inclusion

Now that I've tried the new interpreter, I find the parsing speed of it to be
unacceptable.
I do normally program everything on my laptop, to make myself able to work
anywhere.
It's not very fast. It's a p2 300. And because of that I get another advantage:
I can easily see how a program of mine performs on a slower computer.
And I expect euphoria to work at an acceptable speed on older systems too.
Because I care about back-compatibility and I think it's one of the biggest
factors
one has to take into account when developing an application.

The first application I developed was a DOS application, intended to run on a
486 75.
I wouldn't dare of doing that now.

Here are the times(p2 300):

Simple win32lib application: 10s startup (eu2.4: 1.5s)
MEditor:                     1 min 10s startup (!) (eu2.4: 3.5s)

I've also found out that because everything is parsed before the program is run,
dynamic inclusion cannot be done, ie writing include statements to a file
and then including it. For example, both the jarod library, my asm debugger and
a project I currently work on is affected. They simply won't run.

It can be worked around for jarod and the asm debugger, though it cannot be
worked around
for my current project. It includes all *.e files it finds in a specific
directory,
using them as plugins. And no, don't tell me to compile them into dlls. Because
that
shouldn't be needed. And I don't own the full translator.

This is it. I'm downgrading to 2.4. Even though it'll mess up my associations
again.
Oh well.

Regards, Alexander Toresson

Shhh! Be vewy quiet! I'm hunting wuntime ewwows!

new topic     » topic index » view message » categorize

2. Re: speed of eu 2.5 + dynamic inclusion

Alexander Toresson wrote:

> Now that I've tried the new interpreter, I find the parsing speed of it to be
> unacceptable.
> I do normally program everything on my laptop, to make myself able to work
> anywhere.
> It's not very fast. It's a p2 300. And because of that I get another
> advantage:
> I can easily see how a program of mine performs on a slower computer.
> And I expect euphoria to work at an acceptable speed on older systems too.
> Because I care about back-compatibility and I think it's one of the biggest
> factors
> one has to take into account when developing an application.
>
> The first application I developed was a DOS application, intended to run on a
> 486 75.
> I wouldn't dare of doing that now.
>
> Here are the times(p2 300):
>
> Simple win32lib application: 10s startup (eu2.4: 1.5s)
> MEditor:                     1 min 10s startup (!) (eu2.4: 3.5s)

Of course, I also see the disadvantage, but I think it mainly concerns
to:
o newbies
o other people who don't have the binder/shrouder
o the developement process of a program/library
  ==> I hope we can inlude "shrouded" IL libraries!!

When you don't want to change the MEditor source, but just want to use
it like any other editor, then why not use a shrouded/bound/compiled
version? When I use Word, ConTEXT and whatever else "editors", I always
run .EXE files.

> I've also found out that because everything is parsed before the program is
> run,
> dynamic inclusion cannot be done, ie writing include statements to a file
> and then including it. For example, both the jarod library, my asm debugger
> and
> a project I currently work on is affected. They simply won't run.
>
> It can be worked around for jarod and the asm debugger, though it cannot be
> worked around
> for my current project. It includes all *.e files it finds in a specific
> directory,
> using them as plugins. And no, don't tell me to compile them into dlls.
> Because that
> shouldn't be needed. And I don't own the full translator.

Concerning this point, I had an idea some time ago (URL might wrap):
http://www.listfilter.com/cgi-bin/esearch.exu?fromMonth=2&fromYear=9&toMonth=2&toYear=9&postedBy=Juergen+Luethje&keywords=%2214+Feb+2004+10%3A54%3A22%22

Maybe you can tell me, whether it actually works? smile

> This is it. I'm downgrading to 2.4. Even though it'll mess up my associations
> again.
> Oh well.

Here is a little workaround:
Run 'regedit', and save the concerning brances of the registry to .REG
files. (Use an editor to merge the files to a single .REG file.)
Restoring your associations then just means double-clicking at the .REG
file(s).

Regards,
   Juergen

new topic     » goto parent     » topic index » view message » categorize

3. Re: speed of eu 2.5 + dynamic inclusion

> This is it. I'm downgrading to 2.4. Even though it'll mess up my
associations again.
> Oh well.
Sadly, sometimes we get what we ask for. The " oooh!, I can't w32 my back,
can you w32 it for me ..?", etc:,etc:, crowd has prevailed, and we're stuck
with the result.
The ?? might be, ...can one 'still' buy 2.4, and, at what price, eh!

new topic     » goto parent     » topic index » view message » categorize

4. Re: speed of eu 2.5 + dynamic inclusion

Hi, Juergen!

You wrote:

> 
> Alexander Toresson wrote:
> 

[snip]

> > I've also found out that because everything is parsed before the
program is run,
> > dynamic inclusion cannot be done, ie writing include statements to a
file
> > and then including it. For example, both the jarod library, my asm
debugger and
> > a project I currently work on is affected. They simply won't run.
> >
> > It can be worked around for jarod and the asm debugger, though it
cannot be worked around
> > for my current project. It includes all *.e files it finds in a
specific directory,
> > using them as plugins. And no, don't tell me to compile them into dlls.
Because that
> > shouldn't be needed. And I don't own the full translator.
> 
> Concerning this point, I had an idea some time ago (URL might wrap):
>
http://www.listfilter.com/cgi-bin/esearch.exu?fromMonth=2&fromYear=9&toMonth

=2&toYear=9&postedBy=Juergen+Luethje&keywords=%2214+Feb+2004+10%3A54%3A22%22


> 
> Maybe you can tell me, whether it actually works? smile
> 

It seems to me, we have found the third, so to say, "dynamic lover" !
I am going to go to shop to buy those two bottles of the best Russian
vodka to drink for solved problem !
The first one for Alexander, Al and me, the second one just for you,
Juergen !
....

Ok, I am back !
Pppp-rosit !!!    blink

Regards,
Igor Kachan
kinz at peterlink.ru

new topic     » goto parent     » topic index » view message » categorize

5. Re: speed of eu 2.5 + dynamic inclusion

Hi Igor, you wrote:

<big snip>

> It seems to me, we have found the third, so to say, "dynamic lover" !
> I am going to go to shop to buy those two bottles of the best Russian
> vodka to drink for solved problem !
> The first one for Alexander, Al and me, the second one just for you,
> Juergen !

A whole bottle for me alone? Thank's a lot. I often drank vodka many
yeras ago. We mixed it with apple (*not* orange) juice. Tasty!

But after drinking vodka, it's not recommendable to drive submarines! smile
Well, no problem because my submarine currently gets repaired anyway. smile

> ....
>
> Ok, I am back !
> Pppp-rosit !!!    blink

Normally, I read this list by mail, but now I'll go to the EUforum
webpage and look, whether there are ads for vodka and for submarines. smile

Regards,
   Juergen

-- 
Math problems? Don't drink and derive.

new topic     » goto parent     » topic index » view message » categorize

6. Re: speed of eu 2.5 + dynamic inclusion

Look down\/


On Sat, 20 Nov 2004 14:49:12 +0100, Juergen Luethje <j.lue at gmx.de> wrote:
> 
> Hi Igor, you wrote:
> 
> <big snip>
> 
> > It seems to me, we have found the third, so to say, "dynamic lover" !
> > I am going to go to shop to buy those two bottles of the best Russian
> > vodka to drink for solved problem !
> > The first one for Alexander, Al and me, the second one just for you,
> > Juergen !
> 
> A whole bottle for me alone? Thank's a lot. I often drank vodka many
> yeras ago. We mixed it with apple (*not* orange) juice. Tasty!
> 
> But after drinking vodka, it's not recommendable to drive submarines! smile
> Well, no problem because my submarine currently gets repaired anyway. smile
> 
> > ....
> >
> > Ok, I am back !
> > Pppp-rosit !!!    blink
> 
> Normally, I read this list by mail, but now I'll go to the EUforum
> webpage and look, whether there are ads for vodka and for submarines. smile

I've just got alot of ads for registery cleaners, it appears even
gmail thinks the eu-distro mucks up the registery.
Daniel
> 
> Regards,
>   Juergen
> 
> --
> Math problems? Don't drink and derive.
> 
> 
> 
> 
>

new topic     » goto parent     » topic index » view message » categorize

7. Re: speed of eu 2.5 + dynamic inclusion

Wolf wrote:
> The ?? might be, ...can one 'still' buy 2.4, and, at what price, eh!

If you buy 2.5, I can give you 2.4 (of the corresponding product)
as well. Also you'll get 2.5 beta and 2.5 official as they become
available.

Regards,
   Rob Craig
   Rapid Deployment Software
   http://www.RapidEuphoria.com

new topic     » goto parent     » topic index » view message » categorize

8. Re: speed of eu 2.5 + dynamic inclusion

codepilot Gmail Account wrote:

> On Sat, 20 Nov 2004 14:49:12 +0100, Juergen Luethje wrote:

<snip>

>> Normally, I read this list by mail, but now I'll go to the EUforum
>> webpage and look, whether there are ads for vodka and for submarines. smile
>
> I've just got alot of ads for registery cleaners, it appears even
> gmail thinks the eu-distro mucks up the registery.

LOL! That's what I call progress.
Once upon a time smile we had to use the Google search engine. When we
have a question nowadays, we only have to write the question in an
e-mail, and send it to ourself (using gmail!). When the e-mail is back,
it contains the answer added by gmail. smile)

Regards,
   Juergen

-- 
 /"\  ASCII ribbon campain  |  Money is the root of all evil.
 \ /  against HTML in       |  Send 20 Dollars for more info.
  X   e-mail and news,      |
 / \  and unneeded MIME     |  http://home.arcor.de/luethje/prog/

new topic     » goto parent     » topic index » view message » categorize

9. Re: speed of eu 2.5 + dynamic inclusion

Me wrote:

> Alexander Toresson wrote:
>
>> Now that I've tried the new interpreter, I find the parsing speed of it to be
>> unacceptable.
>> I do normally program everything on my laptop, to make myself able to work
>> anywhere.
>> It's not very fast. It's a p2 300. And because of that I get another
>> advantage:
>> I can easily see how a program of mine performs on a slower computer.
>> And I expect euphoria to work at an acceptable speed on older systems too.
>> Because I care about back-compatibility and I think it's one of the biggest
>> factors
>> one has to take into account when developing an application.
>>
>> The first application I developed was a DOS application, intended to run on a
>> 486 75.
>> I wouldn't dare of doing that now.
>>
>> Here are the times(p2 300):
>>
>> Simple win32lib application: 10s startup (eu2.4: 1.5s)
>> MEditor:                     1 min 10s startup (!) (eu2.4: 3.5s)
>
> Of course, I also see the disadvantage, but I think it mainly concerns
> to:
> o newbies
> o other people who don't have the binder/shrouder
> o the developement process of a program/library
>   ==> I hope we can inlude "shrouded" IL libraries!!

Now I know that this assumption was wrong. Rob reported that we can
*not* include pre-parsed code (= IL files) in a program. sad(
So I agree that for big libraries (such as Win32Lib) there is an
unbearable startup time!

<snip>

Regards,
   Juergen

-- 
Have you read a good program lately?

new topic     » goto parent     » topic index » view message » categorize

10. Re: speed of eu 2.5 + dynamic inclusion

Juergen Luethje wrote:
> Of course, I also see the disadvantage, but I think it mainly concerns
> to:
> o newbies

Newbies scared off by slowness => fewer newbies => lesser growth

> o other people who don't have the binder/shrouder

I didn'thave it for a long time, because ordering something from Canada
seemed quite strange to my parents (I'm 16).

> o the developement process of a program/library

This is the point I'm mostly concerned about. Using 2.5 would slow down
my development process significantly.

>   ==> I hope we can inlude "shrouded" IL libraries!!

Why should that be needed, other as a work-around (may I say hack)
for making the start-up for programs faster?

> When you don't want to change the MEditor source, but just want to use
> it like any other editor, then why not use a shrouded/bound/compiled
> version? When I use Word, ConTEXT and whatever else "editors", I always
> run .EXE files.

But what if I want to be one of the MEditor developers? I didn't compplain
about the slowness of MEditor, but of the slowness of eu2.5. It was just
an example.

> > I've also found out that because everything is parsed before the program is
> > run,
> > dynamic inclusion cannot be done, ie writing include statements to a file
> > and then including it. For example, both the jarod library, my asm debugger
> > and
> > a project I currently work on is affected. They simply won't run.
> >
> > It can be worked around for jarod and the asm debugger, though it cannot be
> > worked around
> > for my current project. It includes all *.e files it finds in a specific
> > directory,
> > using them as plugins. And no, don't tell me to compile them into dlls.
> > Because that
> > shouldn't be needed. And I don't own the full translator.
> 
> Concerning this point, I had an idea some time ago (URL might wrap):
> <a
> href="http://www.listfilter.com/cgi-bin/esearch.exu?fromMonth=2&fromYear=9&toMonth=2&toYear=9&postedBy=Juergen+Luethje&keywords=%2214+Feb+2004+10%3A54%3A22%22">http://www.listfilter.com/cgi-bin/esearch.exu?fromMonth=2&fromYear=9&toMonth=2&toYear=9&postedBy=Juergen+Luethje&keywords=%2214+Feb+2004+10%3A54%3A22%22</a>
> 
> Maybe you can tell me, whether it actually works? smile
> 

That is good idea, though not always usable.

[snip]

/Lex

Shhh! Be vewy quiet! I'm hunting wuntime ewwows!

new topic     » goto parent     » topic index » view message » categorize

11. Re: speed of eu 2.5 + dynamic inclusion

Hi, Alexander!

You wrote:

  [my snip]

> I didn't have it for a long time, because ordering something
> from Canada seemed quite strange to my parents (I'm 16).

You are not alone, yes, and I do know some young Ukrainian,
Bjelorussian and Russian people, they wanted to have 2.3
and 2.4 CE EU, to be registered users, and some of them just
can not transmit a currency to foreign countries from here.

And now PD 2.5 is much more useful for young people
than CE 2.4! Thanks to Rob and RDS!


  [my snip]

> > Maybe you can tell me, whether it actually works? smile
> > 
> 
> That is good idea, though not always usable.
> 
> [your snip]

Ok, I do understand [your snip], never do those
things, really I am absolute teetotaller and this
Russian tee/tea helps me to program in Euphoria.
That [your snip] was not a good my joke, I am sorry.
I am 58 now, Juergen is not very young too, I think.
I do not know where is Al now, the first "dynamic lover",
so, we can not take that notorious 'object' again and
it is the very good news for me.
Take care! --  by Al Getz  smile

> 
> /Lex
> 
> Shhh! Be vewy quiet! I'm hunting wuntime ewwows!

Best Regards, Alexander!
Happy hunting! -- by Travis Beaty

--
Igor Kachan,
kinz at peterlink.ru

new topic     » goto parent     » topic index » view message » categorize

12. Re: speed of eu 2.5 + dynamic inclusion

Alexander Toresson wrote:

> Juergen Luethje wrote:
>> Of course, I also see the disadvantage, but I think it mainly concerns
>> to:
>> o newbies
>
> Newbies scared off by slowness => fewer newbies => lesser growth

Or more people will buy the binder, in order to increase speed. But
I think your consideration above is right.

>> o other people who don't have the binder/shrouder
>
> I didn'thave it for a long time, because ordering something from Canada
> seemed quite strange to my parents (I'm 16).

Your parents took it away? Is there something we can do about it? Maybe
we can write an e-mail to your parents, telling them who we are, and
that we don't do any illegal or otherwise strange things here.
I also can do this alone, privately, or your parents could write me a
mail if they want, asking me whatever they like. I'm a 46 old physician
from Berlin, Germany.

>> o the developement process of a program/library
>
> This is the point I'm mostly concerned about.

Me too.

> Using 2.5 would slow down my development process significantly.
>
>>   ==> I hope we can inlude "shrouded" IL libraries!!
>
> Why should that be needed, other as a work-around (may I say hack)
> for making the start-up for programs faster?

Yes, programs then would start up faster (significantly if they include
large libraries such as Win32Lib).
Such a mechanism is e.g. also used in PowerBASIC (using the keyword
"link"), and also in C, as Andy Drummond recently wrote.
I wouldn't call it a work-around or a hack, I think it's quite logical
behaviour. Parsing and compiling (in this case to IL code) takes time,
and why do the same work over and over again, if it's not necessary?

>> When you don't want to change the MEditor source, but just want to use
>> it like any other editor, then why not use a shrouded/bound/compiled
>> version? When I use Word, ConTEXT and whatever else "editors", I always
>> run .EXE files.
>
> But what if I want to be one of the MEditor developers? I didn't compplain
> about the slowness of MEditor, but of the slowness of eu2.5. It was just
> an example.

Then I misunderstood you, sorry.

>>> I've also found out that because everything is parsed before the program is
>>> run,
>>> dynamic inclusion cannot be done, ie writing include statements to a file
>>> and then including it. For example, both the jarod library, my asm debugger
>>> and
>>> a project I currently work on is affected. They simply won't run.
>>>
>>> It can be worked around for jarod and the asm debugger, though it cannot be
>>> worked around
>>> for my current project. It includes all *.e files it finds in a specific
>>> directory,
>>> using them as plugins. And no, don't tell me to compile them into dlls.
>>> Because that
>>> shouldn't be needed. And I don't own the full translator.
>>
>> Concerning this point, I had an idea some time ago (URL might wrap):
>>
>> http://www.listfilter.com/cgi-bin/esearch.exu?fromMonth=2&fromYear=9&toMonth=2&toYear=9&postedBy=Juergen+Luethje&keywords=%2214+Feb+2004+10%3A54%3A22%22
>>
>> Maybe you can tell me, whether it actually works? smile
>
> That is good idea, though not always usable.

When is it not usable? Maybe we can find here another solution for those
cases.

> [snip]

Regards,
   Juergen

new topic     » goto parent     » topic index » view message » categorize

13. Re: speed of eu 2.5 + dynamic inclusion

Being able to include .il files could also make it more likely that people will
purchase the binder/shrouder.  I never saw much use in those features before.


j.

new topic     » goto parent     » topic index » view message » categorize

14. Re: speed of eu 2.5 + dynamic inclusion

On Mon, 22 Nov 2004 19:19:14 +0100, Juergen Luethje <j.lue at gmx.de>
wrote:

<snip>
>>> Concerning this point, I had an idea some time ago (URL might wrap):
>>>
>>> http://www.listfilter.com/cgi-bin/esearch.exu?fromMonth=2&fromYear=9&toMonth=2&toYear=9&postedBy=Juergen+Luethje&keywords=%2214+Feb+2004+10%3A54%3A22%22
>>>
>>> Maybe you can tell me, whether it actually works? smile
>>
>> That is good idea, though not always usable.
>
>When is it not usable? Maybe we can find here another solution for those
>cases.
>
I believe 2.5 will parse the entire program and all included files
before executing anything, so the above will not work ever.

The only way I can think of is the program reads the include file, and
if wrong, rewrites it and restarts the whole program from scratch.

Regards
Pete

new topic     » goto parent     » topic index » view message » categorize

15. Re: speed of eu 2.5 + dynamic inclusion

On 22 Nov 2004, at 19:19, Juergen Luethje wrote:

> 
> 
> Alexander Toresson wrote:
> 
> > Juergen Luethje wrote:
> >> Of course, I also see the disadvantage, but I think it mainly concerns
> >> to:
> >> o newbies
> >
> > Newbies scared off by slowness => fewer newbies => lesser growth
> 
> Or more people will buy the binder, in order to increase speed. But
> I think your consideration above is right.
> 
> >> o other people who don't have the binder/shrouder
> >
> > I didn'thave it for a long time, because ordering something from Canada
> > seemed quite strange to my parents (I'm 16).
> 
> Your parents took it away? Is there something we can do about it? Maybe
> we can write an e-mail to your parents, telling them who we are, and

<snip>

That's not it, Juergen. The usa is paranoid of everyone, thinks Canada is a 
out of control "third world" country. They'll vote for Bush to invade Canada if 
they aren't careful. Basically, if it's in the usa it's great (even if made in 
China), but everything else is totally untrustworthy and to be feared (attacked 
preemptively).

Kat

new topic     » goto parent     » topic index » view message » categorize

16. Re: speed of eu 2.5 + dynamic inclusion

Juergen Luethje wrote:
> 
> Alexander Toresson wrote:
> 
> > Juergen Luethje wrote:
> >> Of course, I also see the disadvantage, but I think it mainly concerns
> >> to:
> >> o newbies
> >
> > Newbies scared off by slowness => fewer newbies => lesser growth
> 
> Or more people will buy the binder, in order to increase speed. But
> I think your consideration above is right.

Hmm? Do the binder use the c frontend? Have I interpreted it wrongly?

> >> o other people who don't have the binder/shrouder
> >
> > I didn'thave it for a long time, because ordering something from Canada
> > seemed quite strange to my parents (I'm 16).
> 
> Your parents took it away? Is there something we can do about it? Maybe
> we can write an e-mail to your parents, telling them who we are, and
> that we don't do any illegal or otherwise strange things here.
> I also can do this alone, privately, or your parents could write me a
> mail if they want, asking me whatever they like. I'm a 46 old physician
> from Berlin, Germany.

I do have it now. Maybe I formulated it wrongly. It took a year to convince
them.

> >> o the developement process of a program/library
> >
> > This is the point I'm mostly concerned about.
> 
> Me too.
> 
> > Using 2.5 would slow down my development process significantly.
> >
> >>   ==> I hope we can inlude "shrouded" IL libraries!!
> >
> > Why should that be needed, other as a work-around (may I say hack)
> > for making the start-up for programs faster?
> 
> Yes, programs then would start up faster (significantly if they include
> large libraries such as Win32Lib).
> Such a mechanism is e.g. also used in PowerBASIC (using the keyword
> "link"), and also in C, as Andy Drummond recently wrote.
> I wouldn't call it a work-around or a hack, I think it's quite logical
> behaviour. Parsing and compiling (in this case to IL code) takes time,
> and why do the same work over and over again, if it's not necessary?

Yeah, it was radical to call it a hack. But I do still think that 
translating the frontend into euphoria code, making it 20x slower,
and using this in the official interpreter, is bad. I mean, the old one
was extremely fast, which makes il libraries completely unnecessary.

[snip]

> >>> I've also found out that because everything is parsed before the program
> >>> is run,
> >>> dynamic inclusion cannot be done, ie writing include statements to a file
> >>> and then including it. For example, both the jarod library, my asm
> >>> debugger and
> >>> a project I currently work on is affected. They simply won't run.
> >>>
> >>> It can be worked around for jarod and the asm debugger, though it cannot
> >>> be worked around
> >>> for my current project. It includes all *.e files it finds in a specific
> >>> directory,
> >>> using them as plugins. And no, don't tell me to compile them into dlls.
> >>> Because that
> >>> shouldn't be needed. And I don't own the full translator.
> >>
> >> Concerning this point, I had an idea some time ago (URL might wrap):
> >> <a
> >> href="http://www.listfilter.com/cgi-bin/esearch.exu?fromMonth=2&fromYear=9&toMonth=2&toYear=9&postedBy=Juergen+Luethje&keywords=%2214+Feb+2004+10%3A54%3A22%22">http://www.listfilter.com/cgi-bin/esearch.exu?fromMonth=2&fromYear=9&toMonth=2&toYear=9&postedBy=Juergen+Luethje&keywords=%2214+Feb+2004+10%3A54%3A22%22</a>
> >>
> >> Maybe you can tell me, whether it actually works? smile
> >
> > That is good idea, though not always usable.
> 
> When is it not usable? Maybe we can find here another solution for those
> cases.
> 

What if one doesn't want to add that extra complexity to one's code?
It adds an extra step in program execution that wasn't needed before.
But I do not see how this 'argument' of mine would hinder me from using
it. It is just an observation of what people may think.

/Lex

Shhh! Be vewy quiet! I'm hunting wuntime ewwows!

new topic     » goto parent     » topic index » view message » categorize

17. Re: speed of eu 2.5 + dynamic inclusion

Igor Kachan wrote:
[snip]
> Ok, I do understand [your snip], never do those
> things, really I am absolute teetotaller and this
> Russian tee/tea helps me to program in Euphoria.
> That [your snip] was not a good my joke, I am sorry.
> I am 58 now, Juergen is not very young too, I think.
> I do not know where is Al now, the first "dynamic lover",
> so, we can not take that notorious 'object' again and
> it is the very good news for me.
> Take care! --  by Al Getz  smile
> 
> > 
> > /Lex
> > 
> > Shhh! Be vewy quiet! I'm hunting wuntime ewwows!
> 
> Best Regards, Alexander!
> Happy hunting! -- by Travis Beaty
> 
> --
> Igor Kachan,
> kinz at peterlink.ru
> 

I don't understand what you mean. And why are you quoting other people?

/Lex

Shhh! Be vewy quiet! I'm hunting wuntime ewwows!

new topic     » goto parent     » topic index » view message » categorize

18. Re: speed of eu 2.5 + dynamic inclusion

Igor Kachan wrote:
[snip]
> It seems to me, we have found the third, so to say, "dynamic lover" !
> I am going to go to shop to buy those two bottles of the best Russian
> vodka to drink for solved problem !
> The first one for Alexander, Al and me, the second one just for you,
> Juergen !
> ....

You can keep your vodka. I do not drink alcohol.

/Lex

Shhh! Be vewy quiet! I'm hunting wuntime ewwows!

new topic     » goto parent     » topic index » view message » categorize

19. Re: speed of eu 2.5 + dynamic inclusion

Alexander Toresson wrote:

> Igor Kachan wrote:
> [snip]
>> It seems to me, we have found the third, so to say, "dynamic lover" !
>> I am going to go to shop to buy those two bottles of the best Russian
>> vodka to drink for solved problem !
>> The first one for Alexander, Al and me, the second one just for you,
>> Juergen !
>> ....
> 
> You can keep your vodka. I do not drink alcohol.

I do not drink alcohol too, absolutelly, be sure.
That was just a joke. Not good joke, I do see now.
And I am sorry again.

See, please, quote from this thread again:

These are my words:

>> Ok, I do understand [your snip], never do those
>> things, really I am absolute teetotaller and this
>> Russian tee/tea helps me to program in Euphoria.

'Teetotaller' is a human who doesn't drink alcohol at all.

>> That [your snip] was not a good my joke, I am sorry.
>> I am 58 now, Juergen is not very young too, I think.
>> I do not know where is Al now, the first "dynamic lover",
>> so, we can not take that notorious 'object' again and
>> it is the very good news for me.
>> Take care! --  by Al Getz  smile
>> 
>> /Lex
>> 
>> Shhh! Be vewy quiet! I'm hunting wuntime ewwows!
>> 
>> Best Regards, Alexander!
>> Happy hunting! -- by Travis Beaty
>> 
>> --
>> Igor Kachan,
>> kinz at peterlink.ru
 
These are your words:
> I don't understand what you mean.

This story about dynamic inclusion is very very long.
There were different real working solutions on this theme.
But these working solutions were in using very rarely.
Me used them, Al Getz used them and we were searching for
the third person from dozens of thousands of EU users of
66 countries who really uses those working solutions.

I have corrected my private program in February to use
it with v2.5 and with working dynamic inclusion just now,
in November.
My new solution is based on Juergen's method, but I just
use .bat file.
Al Getz, for now, keeps his contributions as is just for
v2.4, 2.3 etc.

So, at the moment, you seem to be the single real EU
programmer who really needs that dynamic inclusion
built into the standard RDS Euphoria.

But now, with 2.5 interpreter, binder and translator working
in same manner it is the exclusively complicated task
for Rob. I think, he keeps dynamic inclusion outside the
interpreter to make possible his plans about future Euphoria.
And he is right, I think.

> And why are you quoting other people?

I thought you snipped me about that vodka, and I just
have snipped it twice. I realized I was wrong.

Best Regards,
Igor Kachan
kinz at peterlink.ru

new topic     » goto parent     » topic index » view message » categorize

20. Re: speed of eu 2.5 + dynamic inclusion

Pete Lomax wrote:

> On Mon, 22 Nov 2004 19:19:14 +0100, Juergen Luethje <j.lue at gmx.de>
> wrote:
>
> <snip>
>>>> Concerning this point, I had an idea some time ago (URL might wrap):
>>>>
>>>> http://www.listfilter.com/cgi-bin/esearch.exu?fromMonth=2&fromYear=9&toMonth=2&toYear=9&postedBy=Juergen+Luethje&keywords=%2214+Feb+2004+10%3A54%3A22%22

What I wrote there was:

| Date: 14 Feb 2004
| From: "Juergen Luethje"
| Subject: Re: Help with plugin concept

...

| I believe using the next version of the interpreter, programs still
| can take advantage of a dynamic include technique, when the code is
| just put into 2 files rather than 1. Then again there are 2 separate
| steps:
|
| ------------------------[ part1.exw ]------------------------
|      P_S = open ("plugins.ew", "wb")
|      puts(P_S, PluginS)
|      close(P_S)
|      system("exw.exe part2.exw", 2)
|
| ------------------------[ part2.exw ]------------------------
|      include plugins.ew
|      -- Here comes the main program ...
| -------------------------------------------------------------
|
| This should work with the interpreter 2.5, shouldn't it?

>>>> Maybe you can tell me, whether it actually works? smile
>>>
>>> That is good idea, though not always usable.
>>
>> When is it not usable? Maybe we can find here another solution for those
>> cases.
>>
> I believe 2.5 will parse the entire program and all included files
> before executing anything,

That's how I understand what Rob wrote, too.

> so the above will not work ever.

I just tested it using exw.exe 2.5 alpha, in general it *does* work
on my system, and I don't see a reason why it shouldn't work on other
systems. However, I don't know whether there might be particular
"dynamic inclusion problems" that can't be solved that way.

> The only way I can think of is the program reads the include file, and
> if wrong, rewrites it and restarts the whole program from scratch.

Yes, that will probably work, too.

Regards,
   Juergen

-- 
Have you read a good program lately?

new topic     » goto parent     » topic index » view message » categorize

21. Re: speed of eu 2.5 + dynamic inclusion

Alexander Toresson wrote:

> Juergen Luethje wrote:
>>
>> Alexander Toresson wrote:
>>
>>> Juergen Luethje wrote:
>>>> Of course, I also see the disadvantage, but I think it mainly concerns
>>>> to:
>>>> o newbies
>>>
>>> Newbies scared off by slowness => fewer newbies => lesser growth
>>
>> Or more people will buy the binder, in order to increase speed. But
>> I think your consideration above is right.
>
> Hmm? Do the binder use the c frontend? Have I interpreted it wrongly?

No, I don't think so. So I believe that the binder (I don't have it
currently) takes the same time for parsing a given program as the
interpreter does.
By binding a big program, you'll save much time anyway, because you bind
it *only once*. Then the startup time of the bound program is almost
zero. If that program is not bound, the interpreter will have to do the
time consuming parsing every time you run the program.

>>>> o other people who don't have the binder/shrouder
>>>
>>> I didn'thave it for a long time, because ordering something from Canada
>>> seemed quite strange to my parents (I'm 16).
>>
>> Your parents took it away? Is there something we can do about it? Maybe
>> we can write an e-mail to your parents, telling them who we are, and
>> that we don't do any illegal or otherwise strange things here.
>> I also can do this alone, privately, or your parents could write me a
>> mail if they want, asking me whatever they like. I'm a 46 old physician
>> from Berlin, Germany.
>
> I do have it now. Maybe I formulated it wrongly. It took a year to convince
> them.

Ooops, misunderstanding. I'm glad that you could convince them. I think
your parents can be happy, that their son has a hobby which is very good
for the "little gray cells". smile

>>>> o the developement process of a program/library
>>>
>>> This is the point I'm mostly concerned about.
>>
>> Me too.
>>
>>> Using 2.5 would slow down my development process significantly.
>>>
>>>>   ==> I hope we can inlude "shrouded" IL libraries!!
>>>
>>> Why should that be needed, other as a work-around (may I say hack)
>>> for making the start-up for programs faster?
>>
>> Yes, programs then would start up faster (significantly if they include
>> large libraries such as Win32Lib).
>> Such a mechanism is e.g. also used in PowerBASIC (using the keyword
>> "link"), and also in C, as Andy Drummond recently wrote.
>> I wouldn't call it a work-around or a hack, I think it's quite logical
>> behaviour. Parsing and compiling (in this case to IL code) takes time,
>> and why do the same work over and over again, if it's not necessary?
>
> Yeah, it was radical to call it a hack. But I do still think that
> translating the frontend into euphoria code, making it 20x slower,
> and using this in the official interpreter, is bad. I mean, the old one
> was extremely fast, which makes il libraries completely unnecessary.

I agree. With a very fast front-end like the one used by Eu 2.4, IL
libraries are not necessary.
As far as I understood, the main reason why RDS translated the front-end
to Euphoria was better maintainability, which also probably means less
bugs in Euphoria, which is good for our programs (altough there are only
few bugs in Euphoria anyway).
My suggestion for the possibility of including/linking (or whatever the
proper technical term would be) IL libraries was an attempt to find a
solution that meets all demands. smile

> [snip]
>
>>>>> I've also found out that because everything is parsed before the program
>>>>> is run,
>>>>> dynamic inclusion cannot be done, ie writing include statements to a file
>>>>> and then including it. For example, both the jarod library, my asm
>>>>> debugger and
>>>>> a project I currently work on is affected. They simply won't run.
>>>>>
>>>>> It can be worked around for jarod and the asm debugger, though it cannot
>>>>> be worked around
>>>>> for my current project. It includes all *.e files it finds in a specific
>>>>> directory,
>>>>> using them as plugins. And no, don't tell me to compile them into dlls.
>>>>> Because that
>>>>> shouldn't be needed. And I don't own the full translator.
>>>>
>>>> Concerning this point, I had an idea some time ago (URL might wrap):
>>>>
>>>> http://www.listfilter.com/cgi-bin/esearch.exu?fromMonth=2&fromYear=9&toMonth=2&toYear=9&postedBy=Juergen+Luethje&keywords=%2214+Feb+2004+10%3A54%3A22%22
>>>>
>>>> Maybe you can tell me, whether it actually works? smile
>>>
>>> That is good idea, though not always usable.
>>
>> When is it not usable? Maybe we can find here another solution for those
>> cases.
>>
>
> What if one doesn't want to add that extra complexity to one's code?
> It adds an extra step in program execution that wasn't needed before.
> But I do not see how this 'argument' of mine would hinder me from using
> it. It is just an observation of what people may think.

After some time gathering experience with the method, we'll probably see
how good it meets the needs in practice.

Regards,
   Juergen

-- 
Have you read a good program lately?

new topic     » goto parent     » topic index » view message » categorize

22. Re: speed of eu 2.5 + dynamic inclusion

Juergen Luethje wrote:
> > The only way I can think of is the program reads the include file, and
> > if wrong, rewrites it and restarts the whole program from scratch.
> 
> Yes, that will probably work, too.
> 

But what if the wrong include file causes the program to crash?

/Lex

Shhh! Be vewy quiet! I'm hunting wuntime ewwows!

new topic     » goto parent     » topic index » view message » categorize

23. Re: speed of eu 2.5 + dynamic inclusion

Alexander Toresson wrote:

> Juergen Luethje wrote:
>>> The only way I can think of is the program reads the include file, and
>>> if wrong, rewrites it and restarts the whole program from scratch.
>>
>> Yes, that will probably work, too.
>>
>
> But what if the wrong include file causes the program to crash?

This should preferably be avoided. smile
Maybe the safest way would be, that the include file initially dosn't
contain any code at all. The file must exist, but it has a size of 0,
or only contains a comment. Then the program dynamically writes the
actual include file as intended, and restarts itself.

Or if a wrong include file causes the program to crash (A include file
dynamically written by the program also can contain a bug!), maybe this
problem can be solved using the new crash_routine() in Eu 2.5? The
crash_routine() writes a new include file, and then restarts the program?
I haven't tetsted it myself yet, but there might be some interesting
possibilities.

Regards,
   Juergen

-- 
Have you read a good program lately?

new topic     » goto parent     » topic index » view message » categorize

24. Re: speed of eu 2.5 + dynamic inclusion

Juergen Luethje wrote:
> 
> Alexander Toresson wrote:
> 
> > Juergen Luethje wrote:
> >>> The only way I can think of is the program reads the include file, and
> >>> if wrong, rewrites it and restarts the whole program from scratch.
> >>
> >> Yes, that will probably work, too.
> >>
> >
> > But what if the wrong include file causes the program to crash?
> 
> This should preferably be avoided. smile
> Maybe the safest way would be, that the include file initially dosn't
> contain any code at all. The file must exist, but it has a size of 0,
> or only contains a comment. Then the program dynamically writes the
> actual include file as intended, and restarts itself.
> 
> Or if a wrong include file causes the program to crash (A include file
> dynamically written by the program also can contain a bug!), maybe this
> problem can be solved using the new crash_routine() in Eu 2.5? The
> crash_routine() writes a new include file, and then restarts the program?
> I haven't tetsted it myself yet, but there might be some interesting
> possibilities.
> 

Personally I don't like eu2.5, and so I don't want to 'lock' myself to it
by using the few good new features.

/Lex

Shhh! Be vewy quiet! I'm hunting wuntime ewwows!

new topic     » goto parent     » topic index » view message » categorize

25. Re: speed of eu 2.5 + dynamic inclusion

On Wed, 24 Nov 2004 10:39:59 +0100, Juergen Luethje <j.lue at gmx.de>
wrote:

>Alexander Toresson wrote:
>
>> Juergen Luethje wrote:
>>>> The only way I can think of is the program reads the include file, and
>>>> if wrong, rewrites it and restarts the whole program from scratch.
>>>
>>> Yes, that will probably work, too.
>>>
>>
>> But what if the wrong include file causes the program to crash?
>
>This should preferably be avoided. smile
>Maybe the safest way would be, that the include file initially dosn't
>contain any code at all. The file must exist, but it has a size of 0,
>or only contains a comment. Then the program dynamically writes the
>actual include file as intended, and restarts itself.
Perhaps something like:
main.exw:
	constanf f=open("inc1.e","rb")
	-- check/reset the contents of inc1
	close(f)
	system("exw.exe realMain.exw")

Pete

new topic     » goto parent     » topic index » view message » categorize

26. Re: speed of eu 2.5 + dynamic inclusion

Juergen Luethje wrote:
> 
> Pete Lomax wrote:
> 
> > On Mon, 22 Nov 2004 19:19:14 +0100, Juergen Luethje <j.lue at gmx.de>
> > wrote:
>
> | I believe using the next version of the interpreter, programs still
> | can take advantage of a dynamic include technique, when the code is
> | just put into 2 files rather than 1. Then again there are 2 separate
> | steps:
> |
> | ------------------------[ part1.exw ]------------------------
> |      P_S = open ("plugins.ew", "wb")
> |      puts(P_S, PluginS)
> |      close(P_S)
> |      system("exw.exe part2.exw", 2)
> |
> | ------------------------[ part2.exw ]------------------------
> |      include plugins.ew
> |      -- Here comes the main program ...

Being new to Euphoria, I have a problem understanding why it is so
important to do dynamic includes.

Of course, for large programs (mainly on heavy servers, doing massive
web serving, or controlling an entire factory's production machinery)
this might be an issue. But that kind of software projects have the 
money and the resources to find other solutions for this.

For anything else, it is customary to close the program while the 
plugins are downloaded and installed.

To make this easy for the end-user, there might be an INSTALL-PLUGINS.BAT
file that does whatever is needed. 

But, it is really much harder to figure out how the main program could
be prepared to accept plugins <i>that do things not thought of at the
time of writing the main program.</i> And this should be the goal of
any serious pluginnable program. 

Compared to that, writing .BAT files (or shell scripts) for plugin
installing is, er, trivial.




-- Another Euphoric, since Nov. 18 2004 --

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu