1. RE: A Euphoria DLL?
- Posted by Andy Serpa <renegade at earthling.net> Feb 28, 2002
- 593 views
Jonas Temple wrote: > Since everyone has been talking about wish lists for V2.4, I thought I > would throw my 2 cents in. > > What I would like to see is the ability to create a .dll with the > binder. I know that I can get the translator and then compile to make a > > .dll but that doesn't make any sense to me. > Can you elaborate on just what doesn't make sense to you? Do you mean that literally, or you just don't want to do it that way for some reason?
2. RE: A Euphoria DLL?
- Posted by Jonas Temple <jktemple at yhti.net> Mar 01, 2002
- 518 views
Andy, It doesn't make sense in that I really don't want to have to fight with a C compiler to get my Euphoria code into a .dll. I certainly could do that (I have Borland C++ 5.something floating around on my hard drive somewhere) but it would be nice to not have to use the compiler. Jonas Andy Serpa wrote: > > Jonas Temple wrote: > > Since everyone has been talking about wish lists for V2.4, I thought I > > would throw my 2 cents in. > > > > What I would like to see is the ability to create a .dll with the > > binder. I know that I can get the translator and then compile to make a > > > > > > .dll but that doesn't make any sense to me. > > > > Can you elaborate on just what doesn't make sense to you? Do you mean > that literally, or you just don't want to do it that way for some > reason? > >
3. RE: A Euphoria DLL?
- Posted by jordah ferguson <jorfergie03 at yahoo.com> Mar 01, 2002
- 547 views
Jonas, is right, why do we have to rely on another language to compile or make dlls. i mean the process is long and tiring why can't we just simply use euphoria, this brings us back to what chris recently said"Euphoria has the potential to be the best language but.....not lots is being done to it". Sorry rob but i agree with chris on that one Jonas Temple wrote: > Andy, > > It doesn't make sense in that I really don't want to have to fight with > a C compiler to get my Euphoria code into a .dll. I certainly could do > that (I have Borland C++ 5.something floating around on my hard drive > somewhere) but it would be nice to not have to use the compiler. > > Jonas > Andy Serpa wrote: > > > > Jonas Temple wrote: > > > Since everyone has been talking about wish lists for V2.4, I thought I > > > would throw my 2 cents in. > > > > > > What I would like to see is the ability to create a .dll with the > > > binder. I know that I can get the translator and then compile to make a > > > > > > > > > .dll but that doesn't make any sense to me. > > > > > > > Can you elaborate on just what doesn't make sense to you? Do you mean > > that literally, or you just don't want to do it that way for some > > reason? > > > >
4. RE: A Euphoria DLL?
- Posted by Bernie Ryan <xotron at localnet.com> Mar 01, 2002
- 539 views
Jonas Temple wrote: > Andy, > > It doesn't make sense in that I really don't want to have to fight with > a C compiler to get my Euphoria code into a .dll. I certainly could do > that (I have Borland C++ 5.something floating around on my hard drive > somewhere) but it would be nice to not have to use the compiler. > Jonas: There is no way to create a dll without a compiler. The reason is that it has to be able to interface with the operating system and must be structured in a certain way. Bernie
5. RE: A Euphoria DLL?
- Posted by Matthew Lewis <matthewwalkerlewis at YAHOO.COM> Mar 01, 2002
- 518 views
> -----Original Message----- > From: Bernie Ryan [mailto:xotron at localnet.com] > Jonas: > There is no way to create a dll without a compiler. > The reason is that it has to be able to interface > with the operating system and must be structured in a > certain way. The same could be said for a normal executable, I think. Why couldn't you have a 'binddll' the same as the regular bind? It would be more complicated, but not not impossible. Here's what it might look like (of ocurse, I'm speculating on how a bound program works, but...): All of the Eu code could be 'included' in the startup case for LibMain. Then you'd need to expose the global routines. This could be done by having the bind utility create a stub that effectively links to the routine_id's of the global routines. The hard part IMHO is figuring out the structure of the stub. Matt Lewis
6. RE: A Euphoria DLL?
- Posted by bensler at mail.com Mar 01, 2002
- 528 views
If you want to compile DLL's, you have to buy the translator. Registered Euphoria is cheap. It's worth having to buy the translator. That's a big selling feature of the translator. If Rob were to implement DLL compilation directly into EU, I'd suggest to him that he distibute it as a separately purchasable extension to the registered version. Rob already practically gives away his product. I wouldn't hesitate to spend an extra $20 (It's gotta be worth less than EU2C) to be able to compile DLL's without the hassles. Chris jordah ferguson wrote: > Jonas, is right, why do we have to rely on another language to compile > or make dlls. i mean the process is long and tiring why can't we just > simply use euphoria, this brings us back to what chris recently > said"Euphoria has the potential to be the best language but.....not lots > > is being done to it". Sorry rob but i agree with chris on that one > > Jonas Temple wrote: > > Andy, > > > > It doesn't make sense in that I really don't want to have to fight with > > a C compiler to get my Euphoria code into a .dll. I certainly could do > > that (I have Borland C++ 5.something floating around on my hard drive > > somewhere) but it would be nice to not have to use the compiler. > > > > Jonas > > Andy Serpa wrote: > > > > > > Jonas Temple wrote: > > > > Since everyone has been talking about wish lists for V2.4, I thought I > > > > would throw my 2 cents in. > > > > > > > > What I would like to see is the ability to create a .dll with the > > > > binder. I know that I can get the translator and then compile to make a > > > > > > > > > > > > > > > > .dll but that doesn't make any sense to me. > > > > > > > > > > Can you elaborate on just what doesn't make sense to you? Do you mean > > > that literally, or you just don't want to do it that way for some > > > reason? > > > > > >
7. RE: A Euphoria DLL?
- Posted by Bernie Ryan <xotron at localnet.com> Mar 01, 2002
- 519 views
Matthew Lewis wrote: > > > > -----Original Message----- > > From: Bernie Ryan [mailto:xotron at localnet.com] > > > Jonas: > > There is no way to create a dll without a compiler. > > The reason is that it has to be able to interface > > with the operating system and must be structured in a > > certain way. > > The same could be said for a normal executable, I think. Why couldn't > you > have a 'binddll' the same as the regular bind? It would be more > complicated, but not not impossible. Here's what it might look like (of > ocurse, I'm speculating on how a bound program works, but...): > > All of the Eu code could be 'included' in the startup case for LibMain. > Then you'd need to expose the global routines. This could be done by > having > the bind utility create a stub that effectively links to the > routine_id's of > the global routines. The hard part IMHO is figuring out the structure > of > the stub. > Matt: A bound program is just the executable interpeter with a executable program code bound on to the backend of it. This would be very different than creating a DLL. Bernie
8. RE: A Euphoria DLL?
- Posted by Jonas Temple <jktemple at yhti.net> Mar 01, 2002
- 526 views
Oh I absolutely agree. I would definitely be willing to cough up extra bucks for the ability to create a .dll with a bind or binddll or whatever. Hear that Rob? $$$$$$$$$$$$$$$$$$$$$$$$ Although if it came with the standard Eu registered package I wouldn't complain. :) I guess another reason I would like this is if there is a bug in a .dll I created with translated code I would have to decide if the bug is in my code, the translated code or the compiler that created the .dll. I REALLY like that if my Eu code has a bug I can just go to the source to track it down. Jonas bensler at mail.com wrote: > If you want to compile DLL's, you have to buy the translator. Registered > > Euphoria is cheap. It's worth having to buy the translator. That's a big > > selling feature of the translator. If Rob were to implement DLL > compilation directly into EU, I'd suggest to him that he distibute it as > > a separately purchasable extension to the registered version. Rob > already practically gives away his product. I wouldn't hesitate to spend > > an extra $20 (It's gotta be worth less than EU2C) to be able to compile > DLL's without the hassles. >
9. RE: A Euphoria DLL?
- Posted by Matthew Lewis <matthewwalkerlewis at YAHOO.COM> Mar 01, 2002
- 516 views
> -----Original Message----- > From: Bernie Ryan [mailto:xotron at localnet.com] > Matt: > A bound program is just the executable interpeter with > a executable program code bound on to the backend of it. > This would be very different than creating a DLL. Different, yes, but how much different? Rather than lumping Eu code to the normal, executable interpreter, it would be bound to a dll-compiled version. The bind utility would then adjust the stub to reflect the entry points for the dll. Again, other than figuring out the proper structure for the entry points, I don't see why this would be too difficult. :) Matt Lewis
10. RE: A Euphoria DLL?
- Posted by Jonas Temple <jktemple at yhti.net> Mar 01, 2002
- 518 views
The only real difference from an Eu perspective is that code you intend to be in a .dll would have to be created as a .dll first before running the interpreter against the main code. In other words, no interpreter for code intended to be a part of a .dll. I may be speaking out of turn here (Rob) but it seems logical to me. This isn't really anything new...C programmers have to do this all the time. Jonas Matthew Lewis wrote: > > > > -----Original Message----- > > From: Bernie Ryan [mailto:xotron at localnet.com] > > > Matt: > > A bound program is just the executable interpeter with > > a executable program code bound on to the backend of it. > > This would be very different than creating a DLL. > > Different, yes, but how much different? Rather than lumping Eu code to > the > normal, executable interpreter, it would be bound to a dll-compiled > version. > The bind utility would then adjust the stub to reflect the entry points > for > the dll. Again, other than figuring out the proper structure for the > entry > points, I don't see why this would be too difficult. :) > > Matt Lewis > >
11. RE: A Euphoria DLL?
- Posted by Bernie Ryan <xotron at localnet.com> Mar 01, 2002
- 558 views
Matthew Lewis wrote: > > > Different, yes, but how much different? Rather than lumping Eu code to > the > normal, executable interpreter, it would be bound to a dll-compiled > version. > The bind utility would then adjust the stub to reflect the entry points > for > the dll. Again, other than figuring out the proper structure for the > entry > points, I don't see why this would be too difficult. :) > Matt: The code that is used in a bound form is byte codes that only the interpeter understands. Now if the code is used in the DLL, it has to be "C" code or some big lump of binary code that has to interfaced with "C" code so the DLL can export it or expose each routine to the outside world. Also the routines have to be able to call other code in other DLLs and also comunicate with the interpeter. That sounds like a lot of work to get around someone just translating a program and compiling it with a compiler. I rather see your idea of trying to interface things with COM that would create a whole new world for euphoria. Bernie
12. RE: A Euphoria DLL?
- Posted by Matthew Lewis <matthewwalkerlewis at YAHOO.COM> Mar 01, 2002
- 552 views
> -----Original Message----- > From: Bernie Ryan [mailto:xotron at localnet.com] > The code that is used in a bound form is byte codes > that only the interpeter understands. Now if the > code is used in the DLL, it has to be "C" code or some > big lump of binary code Why does the Eu code need to be C or binary for a dll if it doesn't for an exe? > that has to interfaced with > "C" code so the DLL can export it or expose each > routine to the outside world. DLL's call Eu routines all the time (call_back), and they're still in byte code form. I assume (I don't have the source) that the way Eu does this is to set up a 'fake' entry point into the interpreter that knows to execute the Eu function within the interpreter. Currently, (I suspect) the fake call_back generation is done on the fly, as you make calls to call_back(). Why couldn't 'bindd' do this at bind time, inserting the entry point code whereever it needs to be in order for the outside world to see it as an entry point? Then generate the stub so that everyone can see the entry points. > Also the routines have > to be able to call other code in other DLLs and also > comunicate with the interpeter. Eu apps (interpreted and compiled) do this all the time. I don't understand why this would be a stumbling block. -External app calls LoadLibrary -Interpreter inside the DLL initializes and runs any top level code -External app makes calls to the Eu code through pre-generated call_back's (perhaps for all global routines) > That sounds like a lot of work to get around someone > just translating a program and compiling it with a compiler. This is a bit more complicated than that, though. You've found out yourself that different compilers have their own quirks and errors that are not easy to pin down. By using bound dlls, it's possible to avoid some of those errors. Besides, the main reason for compiling (that people have raised) is for speed. If you don't need speed for an executable, you'll probably just use bind. I think the same logic goes for dlls. > I rather see your idea of trying to interface things > with COM that would create a whole new world for euphoria. Binding dll's could also work in favor of this, for the same reasons as above. AFAIK, COM objects aren't really any different from DLL's from the compiler's stand point (typelib stuff aside). Does anyone know of any other language that will create dll's without actual compilation to machine code? Matt Lewis
13. RE: A Euphoria DLL?
- Posted by Andy Serpa <renegade at earthling.net> Mar 01, 2002
- 527 views
Jonas Temple wrote: > Andy, > > It doesn't make sense in that I really don't want to have to fight with > a C compiler to get my Euphoria code into a .dll. I certainly could do > that (I have Borland C++ 5.something floating around on my hard drive > somewhere) but it would be nice to not have to use the compiler. > Well, ok, but I don't understand why it would be a "fight". I am *completely* C illiterate, and every time I try to use any compiler to do anything OTHER than Euphoria stuff, I can't get it to work. BUT, I make Euphoria .exe's and .dll's with the translator & Borland (& now Watcom, thanks to Euman) all the time without a hitch. How is typing "emake" a fight? All of these other methods people are trying to come up with seem incredibly more complicated...
14. RE: A Euphoria DLL?
- Posted by Bernie Ryan <xotron at localnet.com> Mar 20, 2002
- 641 views
Matthew Lewis wrote: > > > Different, yes, but how much different? Rather than lumping Eu code to > the > normal, executable interpreter, it would be bound to a dll-compiled > version. > The bind utility would then adjust the stub to reflect the entry points > for > the dll. Again, other than figuring out the proper structure for the > entry > points, I don't see why this would be too difficult. :) > Matt: The code that is used in a bound form is byte codes that only the interpeter understands. Now if the code is used in the DLL, it has to be "C" code or some big lump of binary code that has to interfaced with "C" code so the DLL can export it or expose each routine to the outside world. Also the routines have to be able to call other code in other DLLs and also comunicate with the interpeter. That sounds like a lot of work to get around someone just translating a program and compiling it with a compiler. I rather see your idea of trying to interface things with COM that would create a whole new world for euphoria. Bernie