A partial list of the larger changes I want to get into Penn someday.
- Unicode support. Might be easier to rewrite from scratch, given how much stuff assumes that 1 byte equals 1 character.
- SSL connections that don't drop on a reboot. I know how I want to implement this, just need to sit down and do it.
- @mail rewrite. Internals only, for the most part. I feel that fancy editors and the like are better done in softcode. But right now, when you send a message to multiple people, each one gets their own individual copy with no clue that it was sent to more than one person unless you mention it in the body. That could be done so much better.
- Main loop rewrite. I want to put timed events like dbcks and saves into a queue instead of special-casing each one. Possibly also move to an event loop system like libevent or libev provides instead of our own select-based one.
- Speeding up softcode. The big one for me is eliminating a lot of the string <-> native datatype conversions. This is another big one because it requires touching every single softcode function's implementation, and the parser.
- Extended range for time/date functions. This one isn't so huge, but it does involve finding a good open-source library to do all the calculations. Open to suggestions.