View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000201 | LDMud 3.5 | Runtime | public | 2004-11-26 21:43 | 2011-02-24 09:56 |
Reporter | Assigned To | ||||
Priority | normal | Severity | feature | Reproducibility | N/A |
Status | feedback | Resolution | open | ||
Summary | 0000201: Can catch_msg() be removed? | ||||
Description | Short: Unused apply catch_msg() Date: 990319 From: Coogan Type: Feature State: Unclassified Can the catch_msg() functionality be removed? Nobody seems to use it. | ||||
Tags | No tags attached. | ||||
related to | 0000172 | new | LDMud | Inter-object communication (was: New efun: receive()) |
|
I had a look in our mudlib and see about 15 objects from 5-6 wizards using it. While it is not nobody, it does not look like it is really needed, although tell_room() is faster than a corresponding foreach() over the inventory. |
|
There are libs out there (e.g. one I worked a lot on some time back) that rely on catch_msg() for processing texts given to players (for those using UNIlib: it does essentially the same as the send_message-mechanism). For that purpose, some time back (issue 354) even tell_object() was modified to conform to other functions like tell_room() calling catch_msg(). So I strongly vote against removing catch_msg(). |
|
I've got the feeling that implementing the symmetry by Lars in 0000354 only consolidated the use of an apply from the early years of the driver. Wasn't the development in 3.5 thought as a major release, cleaning up code? ;-) |
|
Oh, to prevent mis-understandings: my statement was only about the situation in MG, not the usage in general. In general, I hope that people using catch_msg() in their mudlibs (or not) will speak up here. ;-) |
|
BTW: We might also do the other way round: remove catch_tell(), call catch_msg() also for strings and let the mudlib dispatch string messages to catch_tell() or do whatever it likes. An even bigger change is to remove all the write, say, tell_* stuff and their applies, add an efun solely for interactive objects to send a message to their network socket and let the mudlib deal completely with everything else. Or reduce it to tell_object() and one apply (e.g. if you tell_object() to a room, that room could decide to tell it to its contained objects). This is discussed in 0000172, maybe I should link it as related here. ;-) |
Date Modified | Username | Field | Change |
---|---|---|---|
2004-11-26 21:43 |
|
New Issue | |
2011-02-19 23:30 | zesstra | Note Added: 0002009 | |
2011-02-19 23:30 | zesstra | Status | new => feedback |
2011-02-20 01:00 | zesstra | Project | LDMud => LDMud 3.5 |
2011-02-20 15:21 | Sorcerer | Note Added: 0002012 | |
2011-02-20 23:16 | Coogan | Note Added: 0002013 | |
2011-02-21 09:15 | zesstra | Note Added: 0002016 | |
2011-02-24 09:56 | zesstra | Note Added: 0002040 | |
2011-02-24 09:56 | zesstra | Relationship added | related to 0000172 |