1. Changes

So, what will be the changes for Euphoria 2.1 or 3 ?
(what can we expect first?)

Of what I can remember:

1) Fixing the with/without annoyance.. (that they always apply globally)
2) Short-circuiting
3) Graphics routines for Win32

Maybe new platforms ?
Automatic inlining of all local routines ?
Can we expect any significant speed improvements ?
Will it be able to handle structures, or at least optimize in such way ?
End-tail-recursion ?
Ability to use routines from a .lib file in DOS32 ?
Changes in the scoping rules ? (maybe constants local to a type-decleration
?)
An routine to read a whole file (speedy) into a 2D-sequence ?
Changes in the default level of a sequence (not nessecarily the top-level)
or addition elements so we can at least choose the level with a calculation,
as some one else sugggested: x = y *** {5,4}  -- Calculation occurs 2 levels
lower than normal

Anything else ?
Maybe ppl have a suggestion to add ?

Come on, Robert, tell us a few secrects, what can and cant we expect ?

Ralf Nieuwenhuijsen
nieuwen at xs4all.nl

new topic     » topic index » view message » categorize

2. Re: Changes

Ralf Nieuwenhuijsen wrote:
>
> So, what will be the changes for Euphoria 2.1 or 3 ?
> (what can we expect first?)
>
Things that would be on my wish list:
 1.enumerated constants
 2. constants local to routines (I use these a lot in other languages)
 These would eliminate a lot of messy workarounds.

I mention these first because they seem so easy to implement.
Now for the good stuff:

Linux version. My reasoning:
 Euphoria is a somewhat weird language - you have to do a lot of things
yourself.
 Linux users are somewhat weird people - they like to do a lot of things
themselves.
 Perfect match, it would seem.
 Besides, Linux is certain to become much more popular, now that
micro$oft has
 released its new unworkable operating system. I even have clients
asking if I
 can install Linux on their computers - they are fed up with the
constant broken
 Windows. (Where did they even hear of Linux?)

An alternative:
 Write a file system for Euphoria. Toss DOS. Sell Euphoria to run on all
sorts of
 single-board, imbedded, dedicated controllers, data loggers, and such.
There are
 a lot of companies out there who *must* have an OS to make their
computer-controlled
 widget chippers run. Preferably a really small and simple OS.

Just a thought.
Irv

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

3. Re: Changes

Ralf writes:
> So, what will be the changes for Euphoria 2.1 or 3 ?
> (what can we expect first?)

We're working hard on the next release.
I don't know when it will be or what the release number
will be. Don't expect anything in the next couple of
months.

Some things that have been completed:

    - short circuit evaluation of AND and OR expressions in
       if / elsif / while conditions. There's a warning if a function
       call with side-effects might be skipped by short-circuit.
       This will catch the less than 1% of existing code that might
        break.

    - file limit increased to 25 from 15

    - all warnings are now printed on the screen *after*
      your program finishes execution, so they can't get lost
      when you clear_screen() or whatever.

    - all with/without settings are saved and restored across
      included files. An included file will inherit the settings of
      the main file, and can change them *locally*, but the original
      settings will be restored at the end of the included file.

    - several very minor bugs have been reported and fixed.
      No bug has been reported by multiple people. Nothing
      that would embarass me into doing an immediate "2.0a"
      release.

optimizations:

     - branch straightening: when the intermediate code has a
       conditional or unconditional branch from A to B, and
       location B has an unconditional branch to C,
       we will now optimize the branch at A to jump directly to C.
       (or even to D, if C jumps to D etc. etc.)

     - initialization checks on global and local variables are
       now dynamically changed to no-ops after the first execution.
       (Most checks have always been eliminated by the
        compiler anyway.)

In the early part of the release cycle, we always have to
spend a lot of time on distribution of the .ZIP file. If you know
of a big site that is missing EUPHOR20.ZIP, let us know and we'll
submit it to them. Or do it yourself if you like.

We have lots more planned.
As for Linux, stay tuned -
there may be some news coming soon.

Regards,
     Rob Craig
     Rapid Deployment Software
     http://members.aol.com/FilesEu/

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

4. Re: Changes

>optimizations:
>
>     - branch straightening: when the intermediate code has a
>       conditional or unconditional branch from A to B, and
>       location B has an unconditional branch to C,
>       we will now optimize the branch at A to jump directly to C.
>       (or even to D, if C jumps to D etc. etc.)

You mean, that things like:

my_sequence[2][3][4][5]

Will be as fast as a reference to the most upper level of a sequence ?
And will these two cases be as fast ?

my_sequence[2][3][my_func()][1][2]
my_sequence[2]my_func()][3][1][2]

Will they be equally fast, or will the first be faster ?

And Robert, you could you add an -except option to bind and shroud ?
Imagine having a bound program, and one include file (named config.e or
highscore.e)
which respectively contains constants for configuration or for example the
highscores.
Im sure there are many other good uses for this.
Some parts you DO want the end-user to be able to modify, some parts you
dont.
And some times, you dont want to bind _everything_ , maybe have a few
include files seperately, so they can easily be updated in the future or
something.

>In the early part of the release cycle, we always have to
>spend a lot of time on distribution of the .ZIP file. If you know
>of a big site that is missing EUPHOR20.ZIP, let us know and we'll
>submit it to them. Or do it yourself if you like.

Well, C-Net won a point. They no longer call Euphoria an enhanced batch
language. Maybe they were sober this time :->>

>We have lots more planned.
>As for Linux, stay tuned -
>there may be some news coming soon.


Well, I myself, am not a Linux-relgious-fanatic blink.. but making a port to
Linux can have many positive effects for the Euphoria scenes. These are the
amateur freeware codes, that code their own OS & Windoz, in C++ !!? Imagine
what they will code when they get their hands on Euphoria ?

And they usually dont ask money for their code. =-)

Ralf Nieuwenhuijsen
nieuwen at xs4all.nl
UIN: 9389920

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

5. Re: Changes

Ralf writes:
>>optimizations:
>>     - branch straightening: when the intermediate code has a
>>       conditional or unconditional branch from A to B, and
>>       location B has an unconditional branch to C,
>>       we will now optimize the branch at A to jump directly to C.
>>       (or even to D, if C jumps to D etc. etc.)
>You mean, that things like:
>my_sequence[2][3][4][5]
>Will be as fast as a reference to the most upper level of a
> sequence ?

I mean, if you have something like:

while x < 1000000 do
     x = x + 1
     if s[x] = 99 then
          puts(1, "found 99!\n")
     end if
end while

When s[x] != 99 the <if> would normally
jump down to the <end while>, which would immediately
jump up to the top of the while loop to test x again.
With branch straightening, the <if> will jump *directly*
to the top of the while loop. It saves a bit of time.
This is just one example. There are many others.

Regards,
     Rob Craig
     Rapid Deployment Software
     http://members.aol.com/FilesEu/

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

6. Re: Changes

>An routine to read a whole file (speedy) into a 2D-sequence ?

I'm all for this one; I use external files alot and hate having to write
a loading routine. Built-in would be *really* nice...


>We have lots more planned.
>As for Linux, stay tuned -
>there may be some news coming soon.

I have a modified Red Hat Linux (it's a programmer's dream if you're into
C), and I'd love to see Euphoria ported to Linux!

>making a port to Linux can have many positive effects for the
>Euphoria scenes. Imagine what they will code when they get their
>hands on Euphoria ?

Ralf, you are absolutely right! Once GNU decides they like Euphoria, we
might be seeing a surge of free software coming in our general direction
;)

_____________________________________________________________________
You don't need to buy Internet access to use free Internet e-mail.
Get completely free e-mail from Juno at http://www.juno.com
Or call Juno at (800) 654-JUNO [654-5866]

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

7. Re: Changes

-----Original Message-----
De: Robert Craig <rds at EMAIL.MSN.COM>
Para: EUPHORIA at cwisserver1.mcs.muohio.edu
<EUPHORIA at cwisserver1.mcs.muohio.edu>
Fecha: Sábado 18 de Julio de 1998 10:21 PM
Asunto: Re: Changes


>    - file limit increased to 25 from 15


I don't think this is enough Rob. As you know my primary interest are
databases... 25 files doesn't let you build a complex relational data model.
Is there any technical reason for this limitation?

Regards,
    Daniel   Berstein
    daber at pair.com

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

8. Re: Changes

Daniel Berstein writes:
> I don't think this is enough Rob. As you know my primary interest
> are databases... 25 files doesn't let you build a complex
> relational data model. Is there any technical reason for this
> limitation?

When I worked on a relational database management system
 for Amdahl several years ago, we organized the user's
data base as one huge file containing all his
relational tables. We managed the space within that file,
allocating and freeing 4k "pages", while doing a lot of random
seeking within the file. We never had more than half a
dozen files open simultaneously.

No one *ever* complained about exhausting the 15-file limit
in an actual program, so I feel I'm being generous bumping
it to 25 smile

Seriously, it would be easy to raise it or even make it infinite,
but that would increase the size of ex.exe/exw.exe
slightly, taxing the available memory for *all* Euphoria programs
just to satisfy a lunatic fringe (that doesn't even exist yet).

Remember, it's not 25 files, it's 25 *simultaneously open"
files. If you actually write a program that needs
more than 25 files open at the same time, let me know.

Regards,
     Rob Craig
     Rapid Deployment Software
     http://members.aol.com/FilesEu/

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

9. Re: Changes

-----Original Message-----
De: Robert Craig <rds at EMAIL.MSN.COM>
Para: EUPHORIA at cwisserver1.mcs.muohio.edu
<EUPHORIA at cwisserver1.mcs.muohio.edu>
Fecha: Lunes 20 de Julio de 1998 12:40 AM
Asunto: Re: Changes


>Daniel Berstein writes:
>> I don't think this is enough Rob. As you know my primary interest
>> are databases... 25 files doesn't let you build a complex
>> relational data model. Is there any technical reason for this
>> limitation?
>
>When I worked on a relational database management system
> for Amdahl several years ago, we organized the user's
>data base as one huge file containing all his
>relational tables. We managed the space within that file,
>allocating and freeing 4k "pages", while doing a lot of random
>seeking within the file. We never had more than half a
>dozen files open simultaneously.


Your right Rob, using 25 *simultaneous* open files is a bit high. But as you
mentioned it's easy to increase that number, so why limit it?. If you say
it'll compromise a lot of system resources, then it's OK to wait for 1GB RAM
PC for under $1000 ;)

Regards,
    Daniel   Berstein
    daber at pair.com

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

Search



Quick Links

User menu

Not signed in.

Misc Menu