Re: Standardized Euphoria

new topic     » goto parent     » topic index » view thread      » older message » newer message

Robert Craig wrote:
> 
> Chris Bensler wrote:
> > I'm working on designing new standard libraries for Euphoria to replace the
> > RDS libs that are shipped with the distro.
> > 
> > I have a few questions.
> > 
> > 1. Besides additional functionality, I would prefer to redesign/reorganize
> > the
> > existing libs. Would this be acceptable to people?
> 
> Now that Euphoria is open source and free, I think it will be
> much easier to add to the existing standard libraries. In the past
> I was reluctant to start adding all sorts of user contributed
> files to the official download package. The reasons are fairly
> obvious:
>    * I was the only one making money from the package,
>      so it seemed unfair to mix in the work of others.
> 
>    * Someone might try to sue me over a copyright
>      misunderstanding.
> 
>    * I might get stuck maintaining other peoples code
>      after they leave.
> 
> I think the idea of adding to euphoria\include is good,
> and creating subdirectories makes sense, especially if
> there are eventually going to be lots of include files.

> I don't think you should change the existing standard .e
> files in a way that will cause existing programs to break.

I hope not. My preference is to progress not compatability, but I do have to be
realistic. The most sophisticated invention in the world is useless if nobody
will use it.

I have a way to avoid breaking compatability, although it would be desirable to
deprecate and eliminate the existing setup eventually.

I actually have a prototype laid out already. I've been reluctant to upload it
for evaluation because I'm not satisfied with the subfolder structure yet, but I
think I will anyways, so people can see where I'm at.


> You can add lots of new files, some in the main euphoria\include
> directory and collections of related files in subdirectories.
> I know that a language designer frequently wishes he could
> start over and do things perfectly in the name of beauty
> and elegance, but the users will not appreciate your sense
> of beauty when they try to upgrade and discover that
> lots of existing programs are now bombing out. It's just not
> worth the hassle.

Agreed, I'd like to make any required transition as seamless as possible.
Again, personally I'm not of a mind to adhere to backward compatability if
breaking it can be justified. Being that the community is still small at this
point, it would be wise to do it now before Eu does manage to get too big, rather
than suffer with comprimises.

I saw a good quote a while ago: (paraphrased)
"Progress is the person who advances on the road to success. Sometimes one finds
themself on the wrong road and then they must turn back to where they deviated
from the road to success. Thus the most progressive person is the one who turns
back first."

Being rational though, I know that I can't force everyone to see my perspective
or force them to use my work and I don't want it to be in vain.
In any case, I think it may have been a mistake to mention compatability in
regards to the file organization, since I don't think that will be a problem.


I mentioned about my 'batch include' concept in another thread. This concept
would be utilized to provide a compatability layer for the existing libs.

The real issue with compatability is when new functionality is added. Such as
the famous TRUE and FALSE constants. These types of things will inevitably create
conflicts with legacy code that can't be avoided.

> One source of new include files could be things that 
> are already being used by many people. Perhaps cleaned up
> a bit. 

Yes. When I have established a structure for the libs, I will be calling on the
community to nominate functions and files to be considered.

> People like to have standard libraries because they
> know that other people are using those libraries
> and the code is probably well supported and debugged.

Quite right. I've been using my Empire libs with Eu2.3 for several years now,
unfortunately all of my code is incompatible with everyone elses. It really
defeats the purpose of advancement if it isolates you from all available
resources.


> It's of course necessary, but a bit risky, 
> to invent new libraries. Perhaps few people will use them,
> but the few that do will demand that they be well maintained
> and documented ... forever.
> 
> Good luck in exploring this area.

Uh oh, the 'D' word! LA LA LA! I can't hear you! LA LA LA! :P

Writing documentation for me is like trying to explain what blue looks like to a
blind person :<
And I'm colorblind! :S

I can only hope that someone will be willing to chip in on that aspect or the
docs will undoubtedly be substandard.


Chris Bensler
~ The difference between ordinary and extraordinary is that little extra ~
http://empire.iwireweb.com - Empire for Euphoria

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu