World: r3wp
[!REBOL3 Extensions] REBOL 3 Extensions discussions
older newer | first last |
Gregg 30-Jul-2010 [1365] | Yes, if it's built in, we're in sync. But if it's an external extension, doesn't it become a problem for us as individuals rather than RT? |
BrianH 30-Jul-2010 [1366x3] | Nope, because it becomes a problem for any person who uses that extension in their product. |
It doesn't matter anyways, because we are discussing the standard intertask messaging mechanism for R3. That can't be external, it would have to run when external extensions are prohibited by security restrictions. | |
This is why BSD got rid of the advertising clause in the first place. | |
Gregg 30-Jul-2010 [1369x2] | Yes, that's what I mean. We who distribute it, and passed along to those who use our work. I'm willing to pay that price, but I can only speak for me. :-) |
First, though, maybe some design thoughts about what our ideal IPC interface would look like. | |
BrianH 30-Jul-2010 [1371x2] | To be fair, when last I tracked your job situation it didn't involve distributing REBOL software to customers directly, so that clause probably *would* work for you :) |
Yes, design thoughts, back to the subject :) | |
Pekr 30-Jul-2010 [1373] | Gregg - to be honest - 200KB? Total bloat. I work in enterprise sphere for 15 years, and never heard of something like "spread". In fact - noone in enterprise sphere cares. Guys, really - let's have clean and mean REBOL solution, the REBOL way. Then we can interop with other systems, as the need arises. Let's not adhere to pseudo standards, because they have some juicy website ... |
Graham 30-Jul-2010 [1374x6] | Re: Spread, it doesn't specifically say how you have to advertise, so one small clause on one page somewhere on the website would suffice |
But asking each application built with R3 to also include a notice like this seems a big pain | |
I wonder if including this "This product uses software developed by Spread Concepts LLC for use in the Spread toolkit. For more information about Spread see http://www.spread.org"as a text string in the source counts? | |
Anyway, I guess most apps have some type of licensing that is viewable from the app, and you can just include the line in there. | |
I don't think it's a biggie .. more of an issue is how good is it, how complex, has anyone used it etc | |
Interestingly the first site I went to using this software does not display this text! http://code.google.com/p/spread-excel/ | |
Gregg 30-Jul-2010 [1380x2] | Brian, I do commercial app development in REBOL as well as in-house. Petr, I'm not here to defend Spread. I mentioned it because when I looked at it before, it was something I marked to remember because it wasn't too large or complex and didn't try to do too much (compared to, say, AMQP). I only played with it breifly, I didn't put it into production. I want a REBOL solution too. :-) |
The questions are: 1) What do we need? 2) Can we build it? | |
Graham 30-Jul-2010 [1382] | Did you get it working at all? |
Gregg 30-Jul-2010 [1383] | I havne't tried using it from REBOL. Their test apps did work IIRC. |
PeterWood 30-Jul-2010 [1384] | I have worked in enterprise sphere for 35 years and never heard of something like "REBOL" from anybody that I've every worked with. Let's make sure that we don't change this and keep REBOL clean and mean and to itself. |
Graham 30-Jul-2010 [1385] | Well, for 25 of those years REBOL didn't exist ! |
PeterWood 30-Jul-2010 [1386] | 2010 - 1997 = 10 ? |
Graham 30-Jul-2010 [1387] | rounded down |
PeterWood 30-Jul-2010 [1388x2] | Mathematics aside, it should be obvious by now that REBOL is not in any way attractive in mainstream IT. I believe it's insularity doesn't help though that is only one reason. I made the comment tongue-in-cheek as I see no relevance to the worthiness or otherwise of a library just because somebody who has worked for 15 years in "enterprise sphere" never having heard of it. |
Whether Spread would be right for REBOL is another matter though it would offer a limited alternative for secure inter-process communications with non-REBOL processes without having to resort to either cgi or "roll-your-own". | |
Graham 30-Jul-2010 [1390] | The point is, any software should be judged on its intrinsic merits rather than how widly it is used? |
PeterWood 30-Jul-2010 [1391x2] | Yes. For many, merits include robustness, reliability, documentation, support and availability of skilled people. |
..and of course, its ability to integrate with what they already have. | |
Graham 30-Jul-2010 [1393] | Maybe we should make a list of candidate libraries and decide what is the best fit to our as yet unstated needs? |
PeterWood 30-Jul-2010 [1394] | Perhaps it would be even better to state our needs for inter-process communication first? |
Graham 31-Jul-2010 [1395] | Well I first raised the quesion of how an external extension might be able to communicate with the rebol application |
Pekr 31-Jul-2010 [1396] | PeterWoo - you talk nonsense, which belongs in advocacy group :-) If you work for 35 years in enterprise, then tell me, if you met spread there. The messaging is done by so called middlewares. IBM has MQ series, SAP has XI. Those engines use the so called connectors. Everybody went the web-services route, hence having ability to talk SOAP might be more important for REBOL. I never argued against having as much libraries as possible wrapped to REBOL, the only thing I argued against is eventual 200KB library inclusion in REBOL, just to do IPC between REBOL tasks ... |
PeterWood 31-Jul-2010 [1397] | but hopefully not arrogant nonsense :-) |
Pekr 31-Jul-2010 [1398] | Well - I don't mind. It is not about if I ever heard about it. It is all about - how much interoperability with outer world do we get? E.g. - can you talk to most Windows or Linux (Unix) apps with it, like Amiga Arexx? Can you talk to SAP, Orcle APPs, WebSphere, SharePoint, etc. enterprise apps? In fact and once again - -I expect having extensions to as many systems as possible, but we surely also know, how picky is Carl about what is going to be included into standard distro, and 50KB is considered being a big addition :-) |
Graham 31-Jul-2010 [1399] | Spread requires a daemon to be running ... so this doesn't fit |
Pekr 31-Jul-2010 [1400] | what I would like to see for IPC mechanism is some port/events mechanism. And then, on top of that, the way to go is the Uniserve like engine. Python has Medusa - simply put - multiprotocol engine, to communicate with external world ... |
Pavel 31-Jul-2010 [1401x2] | Graham IMO almost every IPC need somewhat daemon runing. The library "could" be linked in extension and try to open communication with daemon, when it doesnt find the daemon let start its own (first process trying to comunicate), what is nice in Spread it combines P2P and multicast and members/group policy, and of course single/multi machines. |
Pekr I think in port event model the only what is neccessary is open events to OS events (what possibly is already done, but we don't know how to use it), not only GUI events. Than you can use local pipes (managed by OS including event signalling). Question is if multi machines IPC would go this way. Anyway all this is solved in QNX (signalling abstraction local/external). Question if they use sockets for this. | |
Pekr 31-Jul-2010 [1403] | Pavel - yes, we have so called system port, but we don't know much about it :-) I hope we get Amiga/QNX kind of design in the end. At least that is what I would expect from the messaging expert, Carl :-) |
Gregg 31-Jul-2010 [1404x2] | Petr, Peter doesn't talk nonsense IMO. There are a lot of things REBOL could use for interop. SOAP would be a protocol, not an extension. REBOL IPC may be a protocol too. MQ et al would be for specific systems, not general IPC. I'm all for a Uniserve model. Historically, memory mapped files were one of the most efficient IPC mechanisms on Windows, but if a more portable approach can be written based on named pipes, I can live with that. Sockets are great as long as you don't run into firewall issues (even locally), and might encourage us to think in terms of protocols and messages. As Pavel said, and one of the main design points, is the need for a daemon. Obviously memory mapped files aren't going to work across the net. |
Pavel, I pulled out my old QNX manual and it lists Messages, Ports, and Exeptions as their three IPC mechanisms. Messages can be sent on "virtual circuits" which have a node ID in addition to the task ID to send to; no implementation details given. Ports were like named pipes it seems, with 16 being numbered and reserved by the OS. | |
Pavel 31-Jul-2010 [1406] | Gregg thx for info |
Graham 31-Jul-2010 [1407x2] | Do you really need a daemon if you're just doing IPC on the one PC? |
http://www.rebol.net/r3blogs/0328.html Missed this one ... "So, what I need to know from you is what functions published in the r3lib API should also be provided in the extension API. No, you cannot have them all, because many are only relevant to the host bootstrap itself." | |
Gregg 31-Jul-2010 [1409] | Graham, you don't for a single machine, but you would need a memory mapped file, named pipe, or something else. The question is whether you want an IPC system that is limited to the local machine. |
Graham 31-Jul-2010 [1410] | So, there is the possibility then of two ipc mechanisms .. one for local ipc, and for one distributed ipc ... |
PeterWood 31-Jul-2010 [1411] | Graham, one advantage of using a daemon approach to inter-process communication is that it is very easy to upgrade an application from single-user, single-machine to multi-user, multi-machine. |
Graham 31-Jul-2010 [1412] | Is Carl prepared to do this though? |
Graham 1-Aug-2010 [1413] | http://msdn.microsoft.com/en-us/library/aa365574(VS.85).aspx |
Gregg 1-Aug-2010 [1414] | I don't know Carl's thoughts. I also don't know how ARexx ports worked on the Amiga. They may have just been named pipes, but I don't think that's enough today. |
older newer | first last |