Waverous

3 views
Skip to first unread message

Ryan

unread,
Dec 30, 2010, 5:50:58 PM12/30/10
to MOO Talk
Hi,
I'd like to show you all a project on Google Code called Waverous.
(http://code.google.com/p/waverous/)
The description says: Starting with the original LambdaMOO server
code, a conversion to C++ (already done) will be followed, probably,
by adding XMPP support. There are some really blue sky additions to
come later.

It will be interesting to see what they do with it.
Thanks.

-Ryan

Luke-Jr

unread,
Dec 30, 2010, 11:30:33 PM12/30/10
to MOO-...@googlegroups.com
On Thursday, December 30, 2010 05:50:58 pm Ryan wrote:
> I'd like to show you all a project on Google Code called Waverous.
> (http://code.google.com/p/waverous/)
> The description says: Starting with the original LambdaMOO server
> code, a conversion to C++ (already done) will be followed, probably,
> by adding XMPP support. There are some really blue sky additions to
> come later.

I wonder what the point is. C++ is heavier than C, and really doesn't make
much sense for the MOO interpreter.

Looking over their changes, they haven't *really* ported anything to C++.
Merely made implicit (in C) casts explicit to appease a C++ compiler's
strictness, along with (automaticly-- editing log entries too!) renaming
variables that conflict with C++ keywords. I also see various patches: FUP
(broken by design), expat, and some ident lookup. At the same time, they've
broken the indenting standard used throughout the source.

One compliment I have: It does seem to be decently commented.

Luke

Steve Wainstead

unread,
Jan 21, 2011, 1:49:09 PM1/21/11
to MOO Talk
Thanks! I have several motivations to work on Waverous, one of which
is to be
better at C/C++.

My initial motivation to get it to compile as C++ was I wanted to add
a new
type (a SQLite object). After reading the doc on how to add new types
in
the LambdaMOO source, I thought (perhaps naively), "wouldn't
subclassing be
easier?"

I started hanging out on the Waterpoint moo for a while, where the
LambdaMOO
server's maintainers hang; and to the question of C++ one of the
maintainers
told me, "Some of the server's internals could be expressed better in C
++."

I think this was about 2008... or 2009? I spent a few weekends
slogging through
the code casting returns left and right, renaming variables called
"this" and
"new," and finally one day got it to compile via g++.

I belong to a moo called Avalon, and they had some patches I wanted to
add;
that done, I then proceeded to do nothing for a very long time!

But there are some interesting problems to solve. I found out that GCC
tried
to compile it for 64 bit architectures on OS X, so it was crashing
when you
(the wizard) examined yourself ("@examine me"). So the code is not 64
bit
safe, and that would be neat to do.

I started cracking the Stevens networking book, and the thought of
IPv6 support
came to mind, so I'd like to try that as well.

Oh, and SSL and i18n support, but that's been done by many people
already so I
have, at least, some examples I can follow.

I come from years of doing LAMP stack web applications and I want to
do something
closer to the metal. I've been learning GDB, I built a new Linux box,
and I've
been teaching myself the autotools the past few days (being newly
unemployed,
I have time to do this stuff now :o)

In the long term my goal is to try to build a community around
Waverous. When
I founded the PhpWiki project back in 1999, I had three stated goals:

* It should be easy to use for end users

* It should be easy to administer by system administrators

* It should be easy to hack on by programmers

And for Waverous my plan is the same. These are, really, the biggest
goals of all. To have regular releases, to have a code base that is
perpetually moving towards something better, to have a community of
friendly developers, to have good documentation... these are things
that are really worthwhile.

~swain

p.s. This isn't the first time I've heard bad things about FUP, and
that's
something I'm willing to change!
Reply all
Reply to author
Forward
0 new messages