Re: Independent Euphoria Interpreter

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

Pete Lomax wrote:
> 
> Matt Lewis wrote:
> > 
> > Juergen Luethje wrote:
> > > 
> > > Some comments about the updated page.
> > > 
> > > On the page it currently reads:
> > > | Specifying a config file on the command line would preclude looking in
> > > | the other places.
> > > 
> > > Yes, this will provide maximal flexibility.
> 
> I disagree. If you run an app and it cannot find say libX, then you should 
> just be able to specify where libX is on the command line, rather than
> libX, and machine.e, and win32lib/wxEuphoria, etc. Of course look where
> the command line says first, but if you do not find it I can think of no
> reason to prohibit looking elsewhere.

Yes, I've come to the same conclusion as you.

> > > Should more than one file be allowed?
> Perhaps. You might equally want a semicolon separator in the -i option.

I think I'd rather allow multiple -i's.  But a semicolon on windows and
a colon on nix would work, too.

> > When we talk about 'relative paths' are you saying relative to the 
> > interpreter?  Does that only make sense for the local conf file?  It seems
> > like you'd almost have to.  What do relative paths mean for the other files?
> 
>  From a windows perspective, if you're running C:\euphoria\bin\exw.exe
> then obviusly it ought to look for includes in C:\euphoria\include\. I
> would therefore expect there to be a file C:\euphoria\bin\euinc.conf
> (ie same dir as exw.exe) which contains the relative path "..\include\"
> (and/or attempt that as a last resort if no config file can be found).
> IMO relative paths should be relative to the location of the .conf file
> they are specified in, and a -i relative path should be relative to the
> current directory.

Yes, the $EUDIR/include issue will likely be implicit, like it is now (which
will, of course, not work for portable/cgi, but that's what the conf files
and other command line switches are for.
 
> You may also want a special notation such as "%%..\include\" whereby the
> %% is replaced with the location of exu/exw.exe.

Yeah, I'd thought about something like this.  Is it really necessary?
Useful?  If we're going to check in the same directory as the interpreter,
then you could just put those entries in that file.  And if you put it in
another conf file, then if you happen to run the wrong interpreter (maybe
because you're testing out the version you just modified and built from
source) then you could have brokenness.  I'm open to it, but I'd like to
hear some more arguments on that front.

> Personally I would reword that as:
>    * command line switches
>          * -c <config file>
>          * -i <directory of euinc.conf>

I think you missed the intent.  Let's suppose that you have (all configured
and everything) your favorite win32lib (v0.60.6) set up:

-- c:\euphoria\bin\euinc.conf file:
c:\euphoria\include\win32lib

But you're interested in testing v0.71.6.h, so you put it in:

c:\euphoria\downloads\win32lib71

Now, to run your program, you could type:

> exwc -i c:\euphoria\downloads\win32lib71 myapp.exw

Now you've overridden, *for this execution only*, the version of win32lib
that you use with your application.  If you find yourself doing the same
switch over and over, you probably should just put it into a conf file,
but I think it will make life a lot easier, at least for those of us
who develop the libraries, and often have need to switch back and forth.

> Lastly, can you add a note that if %APPDATA% and/or %ALLUSERSPROFILE% do
> not exist then the corresponding step is skipped (rather than crash/error
> out).

Yeah, I'll point that out.

Matt

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

Search



Quick Links

User menu

Not signed in.

Misc Menu