Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

cancel ×


Sorry! There are no comments related to the filter you selected.

Honestly... (3, Funny)

VoidWraith (797276) | more than 8 years ago | (#13571530)

I think they need to take Bob's [] advice. Very irritating to read.

Re:Honestly... (1)

Nasarius (593729) | more than 8 years ago | (#13572573)

Holy crap. The grammar problems of this article run far beyond apostrophe misuse. Besides the terribly awkward phrasing and missing commas, overuse of parentheses, and common their/there/they're your/you're crap, here are some of the stranger mistakes:

(excusable if the author is German, but I doubt it)
Baldures Gate
Neverwinter nights
RPG game
to add flare, and fun
(two mistakes within three words!)

The sad thing is that the article is nearly devoid of content. It offers virtually no useful information besides the links at the end, especially not for Slashdotters. On the other hand, it was very amusing to ridicule.

Umm, no, not specifically for extending games (5, Informative)

cookd (72933) | more than 8 years ago | (#13571535)

Lua was definitely not designed specifically for extending games. It is a general purpose scripting language designed to be easy to embed and easy to use. It has been embedded into a number of games because it is hightly suited for this kind of embedding, but it was not originally intended for games.

I've been working with Lua off and on for a while. I have to say that it is pretty darn cool. It is really easy to embed, really easy to extend, and really lightweight (about 90k or so). The language is very simple, but still supports a lot of advanced programming concepts like closures.

Re:Umm, no, not specifically for extending games (0, Redundant)

Anonymous Coward | more than 8 years ago | (#13572184)

Um he never said it was specifically for extending games so dont misquote people. What he said was "Lua is a powerful light-weight programming language designed for extending applications." Read before you flame.

Re:Umm, no, not specifically for extending games (0, Redundant)

General Wesc (59919) | more than 8 years ago | (#13572210)

Grandparent is not refering to the article ,but the blurb itself:

Lua, a light-weight programming language made specifically for enhancing and extending games

Read before you flame.

Re:Umm, no, not specifically for extending games (0)

Anonymous Coward | more than 8 years ago | (#13572410)

This is so pathetic: a Slashdot-editor has a sudden desire to not only copy-and-paste, but to actually edit the article, which, given the restraints of his education and personality, can only lead to failure.


Off-Topic: Apostrophe Abuse (2, Funny)

venomkid (624425) | more than 8 years ago | (#13571539)

...for making game's cooler...
...past the shipping titles intentions...
...if you're games have Lua capabilities...
...and add-on's that you can download for free...

...and that's just the first two paragraphs...

...who's editing that site?

Re:Off-Topic: Apostrophe Abuse (4, Funny)

Rallion (711805) | more than 8 years ago | (#13571945)

...who's editing that site?

For the love of the sweet sweet Jebus, I hope nobody is.

Re:Off-Topic: Apostrophe Abuse (1, Funny)

Anonymous Coward | more than 8 years ago | (#13572166)

For the love of the sweet sweet Jebus, I hope nobody is.

Heh heh heh. Why do I never have mod points when I needs 'em?

Re:Off-Topic: Apostrophe Abuse (1)

xaque (869340) | more than 8 years ago | (#13596924)

...who's editing that site?

Don't you mean "whose edit'ing that site?"

Dawn of War (1)

orkysoft (93727) | more than 8 years ago | (#13571558)

Dawn of War [] , an RTS game without resource harvesting as you know it, uses Lua too.

Re:Dawn of War (2, Funny)

JVert (578547) | more than 8 years ago | (#13571695)

Pure genious, the download page has background music. The only page that has links to pop up videos... with sound... so you can hear the background music, and the video.. at the same time. Too smart for this world is what that is. Oh and the video just ended with the progress bar at %30. Is this game really playable? Looks nice, but what i've seen so far the only war is in the web development team.

Re:Dawn of War (1)

Maserati (8679) | more than 8 years ago | (#13573282)

Actually yes, the game itself is darn good. The developers are really into the Warhammer 40,000 universe and it shows. It's more of a squad-based action game than an RTS; it is an RTS but it's got a different take on resources and bases. It feels much more like a tactical game where you build your base than an RTS,

Google up the demo.

Oh, and I didn't get any sound. No video either. Hmmm. But I'll give 'em credit for size of the screenshots, I hate checking out a game's site and getting small images.

Re:Dawn of War (1)

KDR_11k (778916) | more than 8 years ago | (#13574104)

It's playable but patching your newly bought (t costs a tenner now) version to the latest requires that you apply every single patch in order.

Oh and don't be fooled by the labelling, "Normal" difficulty means "Damn Easy".

Re:Dawn of War (1)

Malor (3658) | more than 8 years ago | (#13573895)

Dawn of War is a VERY good game. I'm not heavily into RTSes as a general rule, but I played that one a lot. Great units, very atmospheric, lots of strategic depth. Designing an RTS from battle-tested(heh) pen and paper rules was a fantastic idea. It's been tried before, but this one really got it right.

Major downside is that the single player game is exceedingly short. They're just about to ship an expansion, Winter Assault, on the 20th. It'll add a bunch of single-player content, as well as another playable race, making five total. (not many RTSes out with five distinct sides... possibly no others?)

It got a little lost, last year, because the Total War:Rome game shipped right at the same time. Damn shame, really... people were more excited about Rome, and it didn't get the press or sales it really deserved. A year later, I'm still playing Warhammer on occasion, but Rome sits on the shelf.

If you're gaming on the PC, like RTSes at all, and missed this title, I strongly suggest checking it out.

Um, yeah. Not so much. (2, Funny)

Sliptwixt (606116) | more than 8 years ago | (#13571665)

It's like bastard child of a VB nun mistakenly locked in a room full of Perl madmen.

Turned me off from doing any scripting for WoW completely.

lua operators or, and are cool (1, Informative)

Anonymous Coward | more than 8 years ago | (#13574476)

Well, the lua 'or' and 'and' shortcut logic operators are sort of cool because you get shorthands for using defaults for variables,
so instead of
  PHP: doSomething(isset($a)?$a:-1);
you can do:
  Lua-like: doSomething(a or -1)

This removes the redundancy in the php statement.

I felt the embedding of lua might be kind of hard, it looked like programming postscript to me

Re:Um, yeah. Not so much. (1)

Moonshadow (84117) | more than 8 years ago | (#13577285)

How do you figure? I've actually been extremely pleased with Lua, and I avoid VB and Perl whenever humanly possible. "if...then...end" statements don't really make it VB-like, thank goodness. It isn't a langauge for applications by any means, but for writing one-off scripts, it's remarkably well-suited to the job.

Not really well researched article (4, Informative)

Anonymous Coward | more than 8 years ago | (#13571680)

Neverwinter Nights does not use LUA, it uses our own scripting language, NWScript which has been developed from ground up in house and has nothing to do with LUA.

LUA was used for scripting in Baldur's Gate series however.


Pretty lousy article... (3, Informative)

MrDomino (799876) | more than 8 years ago | (#13571681)

Aside from the fact that it appears to have been written by somebody whose teachers apparently overlooked the usage of the apostrophe when teaching him English, the article didn't really say all that much. Reading the summary, I was expecting some details about Lua itself, or maybe even some information about where it is headed in the future. All the article pointed out was that Lua was being used in some games. ...... Real informative.

But seriously, Lua's a great language. Full lexical scoping and first-class functions alone give it insane flexibility and power, and its table data structure is implemented very well. In general, Lua is one of the most well-thought-out languages I've ever seen; its creators have taken great pains to get all of its functionality into it while still maintaining a low profile (the stand-alone interpreter takes ~150KB of space) without resorting to kludges or hacks, and these efforts have paid off. I wouldn't think of using anything else to extend a program.

How About Scheme? (2, Insightful)

RAMMS+EIN (578166) | more than 8 years ago | (#13581317)

While I completely agree with your post, the last sentence bites me:

``I wouldn't think of using anything else to extend a program.''

I'd just like to propose Scheme as an alternative to consider. Scheme has all the characteristics you applaud: great design, immense flexibility, and low footprint. Comparing Scheme to Lua:

  - Scheme is a Lisp dialect, and, as such, uses s-expressions (basically lists, think lots of parentheses). Some people find this annoying, but it makes the syntax very regular and easy to parse.

  - Scheme has a reader that reads s-expressions and a writer that writes them. This is convenient for reading and writing data, but (since Scheme programs are built of s-expressions) also allows easy processing of program code.

  - Scheme offers macros which can be used to extend the syntax of the language. Few other languages offer these; it seems to go together with the parentheses (things like C macros are nowhere near as great)

  - Scheme is standardized, and there are many implementations; anything from simple interpreters to complete IDEs and high-performance compilers

  - Scheme is old, and therefore less prone to the incompatible changes that seem to plague more modern languages

  - Scheme has first-class continuations, which I believe Lua doesn't have. In a nutshell, first-class continuations allow you to break the call-return control flow; you can return as many times as you like, or not at all. This is a very flexible feature, which can be used to implement certain things very concisely and elegantly.

  - Standard Scheme does not contain structures or objects as found in other languages. Many Scheme implementations support these, or allow one to implement support using macros, but programs that use these features won't be completely compatible with all Scheme implementations.

  - Scheme is used extensively in programming language and compiler research. It's also used to teach programming in a number of universities. Scheme is covered in various books, many of which can be read online.

I think that about sums it up. Note that I'm not saying anything is wrong with Lua, I'm just pointing out that Scheme is worth looking into, as well.

For more information, [] is a good place to start.

Python? (1)

Bootle (816136) | more than 8 years ago | (#13571705)

I'm no hardcore programmer but this kind of thing seems tailor-made for using Python. Do any games use python for this kind of stuff?

Can some more knowledgable people post some pros/cons of using python for this, like issues with the byte-compiling?

Re:Python? (1)

Noksagt (69097) | more than 8 years ago | (#13571825)

There are numerous comparisons. . Lua is nice because it is tiny. Python is nice because it is versatile.

Ooops..Linky (2, Informative)

Noksagt (69097) | more than 8 years ago | (#13571997)

Link []

Re:Ooops..Linky (1)

Nasarius (593729) | more than 8 years ago | (#13572657)

Not bad, but it's bound to be Lua-biased because of the source.

I'm working on an open-source game with a few other people, and we're using Python as the main language, with bottlenecks to be rewritten in C/C++ as necessary. A powerful Python scripting interface will be very simple to implement.

Re:Python? (2, Informative)

snuf23 (182335) | more than 8 years ago | (#13572094)

Civilization 4 will use Python and XML [] for customization. The system is supposed to be extremely flexible and be good for total conversions.
Could make for some neat mods. I'm hoping we'll see some kind of Master of Magic game come out of it.

Re:Python? (3, Informative)

Pxtl (151020) | more than 8 years ago | (#13572969)

The problem is that Python (in it's base form) is wholly inappropriate for this. Python has no restricted execution, no sandbox, and many of the core Python commands can damage the system. File access is within the builtins.

It takes a lot of work to rip out all that dangerous stuff and convert Python into a vessel appropriate for running untrusted code. Because any game with a scripting engine will be modded, untrusted code is a given.

Tcl (1)

DavidNWelton (142216) | more than 8 years ago | (#13573811)

I read one of the links above, comparing Python and Lua, but it doesn't talk about sandboxes. Does Lua have one or does it just do multiple interpreters?

I have to say that Tcl is pretty good for this kind of thing too, although it is certainly bigger than Lua. It has sandboxes and multiple interpreters that you can control from both C and Tcl itself. You can also do threads, if you want. And the language is also pretty easy to learn for newcomers, like most scripting languages - especially considering the really friendly user community.

Of course, if you want really small, there are Tcl versions and related languages like Jim [] and Hecl [] .

Lua's sandboxing (2, Informative)

Morgaine (4316) | more than 8 years ago | (#13574734)

I read one of the links above, comparing Python and Lua, but it doesn't talk about sandboxes. Does Lua have one or does it just do multiple interpreters?

Both of those apply. As Lua is fully reentrant and tiny, you can have any number of Lua VMs active concurrently in a program, and they're all naturally disjoint from each other.

In addition, Lua execution is inherently sandboxed with respect to the operating system because the base interpreter provides no system functions at all, and so it can affect only its own internal state. You need Lua's standard libraries before you can do file operations etc with it, but those libraries are available only if the designer chose to link them in to your executable, so the sandboxing is unbreakable "by default", bugs excepted.

Diametrically opposed to the above, many other Lua executables exist which contain dynamic loaders to allow the interpreter to be extended on the fly with arbitrary code, ie. to provide high functionality rather than sandboxing.

Lua can be pretty much anything you want it to be. The base VM just gives you efficient and flexible scripting, and imposes no usage policy at all.

Re your point about Tcl, that language suffers from its string orientation when applied to gaming, although it's fine for embedding as a simple configuration language. Lua is stunningly fast, so its use in games goes far beyond mere configuration and UI scripting, right into the hearts of engines.

Re:Lua's sandboxing, Tcl (1)

DavidNWelton (142216) | more than 8 years ago | (#13574769)

Sounds like the Lua approach is pretty smart for what it's meant for. Build it small and make it extensible is often a pretty good way of doing things. One thing that's missing from Tcl in terms of sandboxing that your comments don't exactly cover WRT Lua is the ability to really limit things. For instance, Tcl's sandbox won't stop a "while { 1 }" type of situation - you'd have to have a control thread or some other means of defeating it (it's certainly possible, just not as easy as it could be).

You do make a common mistake regarding Tcl though, that it is "string based and therefore slow". Tcl has been internally byte compiled for a number of years. I still don't think it's as fast as Lua, but there's more to it than just "string based", because while strings are very important to Tcl, internally it's bytecodes and the correct 'C' types.

Re:Tcl (1)

Moonshadow (84117) | more than 8 years ago | (#13577355)

I'm not sure what you mean by interpreters - are you talking about states?

Python, when embedded, runs in a single global state, IIRC. With Lua, you can create any number of separate Lua states which are effectively their own sandboxes, and then run scripts in them as you choose.

Re:Python? (1)

HarryKal (907841) | more than 8 years ago | (#13585165)

Actually Python supports restricted execution. This browser Grail [] is writen in Python and supports Python applets that run securely with rexec. As for the Python used in games matter I suggest my article about it [] . The use of Python in games is discussed along with some things that are only possible with Python.

Re:Python? (1)

Pxtl (151020) | more than 8 years ago | (#13597793)

I realise that this reply is very late, but Guido has long since deprecated rexec, and apparently it was never really safe. Currently (and for many years) the mainstream Python release has no working method for running untrusted code.

While many platforms include their own solution (Zope, for example) no-one seems to have released an officially dedicated distribution for restricted code. To my knowledge, Stackless has the same weakness.

Re:Python? (1)

Zeussy (868062) | more than 8 years ago | (#13573378)

Eve-Online is heavily based on python for server and client. Battlefield 2 has all its game scripts written in python too. I know there are many others, but those are the 2 I'm mainly aware of.

Re:Python? (1)

FrangoAssado (561740) | more than 8 years ago | (#13573483)

Lua was designed from the start to be embedded in other programs (although not specifically games, as the article says). It is tiny (less than 100kb), and written in strict ANSI C (so it is *very* portable and can run on any game console). It is also very easy to extend both with the host language (be it C, C++ or Java) and Lua itself. Recently, it has gained a very nice JIT compiler (still in alpha) for the x86, with other platforms to come.

Python, although nice, was not designed for this kind of use. It is huge (when compared to Lua), and requires a non-trivial amount of work to embed it on other applications. Also, it contains a lot of stuff in its core that may not be suitable for games (file I/O and things like that).

Re:Python? (1)

EnglishTim (9662) | more than 8 years ago | (#13575845)

It depends a lot on the platform. I could conceivably see Python used in PC and possibly next-generation games, but for current generation consoles, it's too large. It's very difficult to get the code alone under 1MB, whereas the Lua code can fit within 100KB.

Re:Python? (1)

Moonshadow (84117) | more than 8 years ago | (#13577320)

Python's really clunky compared to Lua. It -can- be embedded, but it's more trouble than it's worth, IMHO. For what Lua does, it's the better langauge, I think. It's more designed for security, too - when you embed Lua, you choose which of the standard libraries to load, including string handling, table handling, and IO. For something like WoW, you just turn off (don't load) the dangerous libraries and disable the ability to load them from Lua, and bam, you have a reasonably safe script execution environment ready to go.

Re:Python? (1)

Elbeno (754684) | more than 8 years ago | (#13578339)

The reason why at least one game shop uses Lua rather than Python is that Lua was written by just a few people. They are both under similar "free, non-copyleft" licenses, but in the case of Python, what makes the lawyers nervous is that the Python code has (and has had) many contributors, any of whom may step forward and demand their pound of flesh at some future time. The point is not that the case would be successful, but companies want to avoid going to court and exposing their inner workings. This won't happen with Lua: it was written by a few people who can sign agreements to guard against this future possibility.

Re:Python? (0)

Anonymous Coward | more than 8 years ago | (#13583585)

There is a very interesting article about Python and using it for game scripting. It discuss a special form of Python called Stackless that supports micro-threads.

Multithreaded game scripting with Stackless Python []

MISLEADING ARTICLE!!! (2, Interesting)

RootsLINUX (854452) | more than 8 years ago | (#13571735)

"Lua, a light-weight programming language made specifically for enhancing and extending games"

Wrong bitch!
Lua is *not* a language that was specifically made for enhancing games. True, it has a great use in enhancement and extension of games (in fact I use it in my game [] ), but it is used in MANY pieces of software outside gaming. Here is proof. []

For the bastards who are too lazy to click the link, here's a sample of the projects that use Lua (outside of gaming)
- Automatic configuration of network devices
- Heart Institute Monitoring Network
- CPC4400 Embedded Switching Platform
- Horus Alarm monitoring software

Unreal script is an example of a language designed specifically for games (or just a game in this case). Lua is not one of them. I would like to encourage the editors to check their submissions over thoroughly and stop mis-educating the Slashdot crowd. Of course, that's probably as likely to happen as Apple is to announce that they're switching back to PowerPC. We can hope, but it probably won't do no good. :(


gtm256 (848258) | more than 8 years ago | (#13583450)

It's also used by ion, a neat tabbed windows manager that focuses on non-overlapping windows and keyboard shortcuts. Fun to try if you're bored. []

Game Development with Lua, other projects (3, Informative)

Noksagt (69097) | more than 8 years ago | (#13571766)

My officemate literally just purchased Game Development with Lua [] . It is a neat book.

However, Lua is used for other things [] , includinge the ion [] window manager, the SciTE [] editor, the Elinks [] text webbrowser and more.

Lua is simple, functional, and ideal for games (3, Informative)

Deraj DeZine (726641) | more than 8 years ago | (#13571841)

I embedded Lua into an as-yet-unreleased top-scrolling space shooting game (a la Raptor) and it is a very handy language for embedding. I believe it was originally designed as a language simply for configuration files, but is has grown into a capable (but very simple) language.

The entire manual that explain the whole language as well as the C embedding interface and the optional standard libraries is probably less than 100 pages printed. The source code is around 10,000 lines of C code, I believe.

Performance was also particularly impressive provided you know what you're doing. If you're new to functional programming, you might want to read up a bit. Also, it is a good idea to have experience with recursion and other such elementary topics.

Overall, I couldn't believe how easy it was to build Lua into my little project and I doubt I'll ever take a look at another scripting language because Lua is just that good.

The scheme I chose to use for my project is that it reads in all the Lua files in a directory and using the game engine's simple API (in Lua), different scripts add things like ships or new weapons. This allows the player to write a quick script for a new weapon (e.g. a rail gun), drop the script in a directory, start the game, and then use that weapon. There's basically no overhead. I think that's pretty cool and encourages people who don't know how to make an entire game to still have a fun time extending the game by themselves.

mangband/tomenet (2, Informative)

GoNINzo (32266) | more than 8 years ago | (#13572026)

I have to say that it really has helped the lives of mangband and tomenet. You don't need to be a fancy c programmer to add abilities to the games, plus you can make some of the changes live, which is really nice. Kind of neat, I just wish that some of the debugging tools were a little cleaner to work with.

Changes at Runtime = Nice! (1)

MiceHead (723398) | more than 8 years ago | (#13572252)

As GoNINzo pointed out, it's nice to be able to make changes at runtime while creating a game. Being able to tweak behaviors without having to save_gamestate-> exit-> recompile-> restart-> reload_gamestate is a huge time-saver when you're fine-tuning. And anything that allows you to experiment easily will increase your ability to be creative. After all, many advancements come about accidentally through tinkering

Of course, it also coddles a bit of laziness on the design side, so if you're not careful, you end up designing ever-larger systems as you write them, rather than thinking them out beforehand. Not that I would ever fall into that trap. Repeatedly. Over and over again. Seriously, you'd think I'd learn. - Making games one game at a time.

Garry's mod for HL2 uses LUA... (0)

Anonymous Coward | more than 8 years ago | (#13572385)

... in order to create mini-mods of itself. And it's a mod. I think this is pretty dern cool

Neverwinter Script? (0)

Anonymous Coward | more than 8 years ago | (#13572809)

What's wrong with Neverwinter Script? It's a C-like language that was embedded since day one.

Game Monkey (1)

Fortyseven (240736) | more than 8 years ago | (#13573134)

Has anyone touched the Game Monkey [] yet?

Seemed nice.

I knew it! (1)

vga_init (589198) | more than 8 years ago | (#13573650)

I spent a couple months scripting scenes for the Hero6 project. I don't know if the project is still active anymore, but the building of the game was heavily centered on LUA scripts that made event calls to the game engine, which I think was written in either C or C++. It was an excellent approach, and LUA was perfect for the job; it made development very simple and easy.

I Love Lua (3, Informative)

Nurgled (63197) | more than 8 years ago | (#13574011)

I've embedded Lua into all sorts of things. Never really finished any of it, but I did embed Lua into the BUILD engine to replace the game code written in C. I've also been working on embedding it into Quake 3 Arena to do similarly, though unfortunately real life is getting in the way of doing much there. Lua is great because you can make what you want with it. It has no builtin functions, so it's completely up to the embedder what gets included. The bundled coroutine library is very useful in games, too. It doesn't even have an object model of its own, meaning that you are free to invent one based on the simple structures it provides.

The adventure game Grim Fandango was based on Lua, as was the latest Monkey Island game. Lua gets everywhere. It's in text editors, web servers, games, your shell... you name it. It's probably somewhere on your computer right now, hidden inside some application.

um, not quite (1)

chrish (4714) | more than 8 years ago | (#13575037)

Except, of course, for the fact that Neverwinter Nights doesn't use Lua at all. It's using a custom C-like language.

Lua's cool and all (and BioWare has used it for the Baldur's Gate games and the underrated MDK2), but it's not in NWN or NWN2.

In other game scripting news, Freedom Force and its sequal use the delicious Python [] .

useless article (1)

El_Muerte_TDS (592157) | more than 8 years ago | (#13576447)

I don't know Lua, except for its name. But I do know UnrealScript very well (the scripting language of the UnrealEngine), a language that was written with games in mind.

Lua is just an interpreted programming language right? So you still need to create bindings from the game to the Lua environment. How difficult is that to do? How does Lua compare to using Python (for example) as script language? What makes Lua so great? Nothing about that in TFA, just some examples where it's used.

gmod (0)

Anonymous Coward | more than 8 years ago | (#13581266)

garry'smod, a half life 2 mod, currently is in the process of implementing lua into its framework, and with me being a gold member (read: Pay to beta), I get to see it, and there are some fsking sweet gametypes currently out for it...


Re:gmod (1)

Deadguy2322 (761832) | more than 8 years ago | (#13588501)

Pay to Beta? Isn't that what all PC games are for the first 6 months?

Some more information would be nice (1)

-pms-mistletoe (894503) | more than 8 years ago | (#13594522)

What a pointless article. I can summarise it (removing all the grammatical mistakes, and incorrect facts):

"Some games can be extended with Lua."

Wow! Cos, like, I'd never noticed any of my WoW addons using Lua, and never opened any of the files in curiosity. No...

Anyway. Anyone who actually uses Lua out there? What's a good site with a tutorial on how to develop an addon, or just an intro to the language? Sure, I can google, but with an article like this I'd expect a little more info for the 'hardcore' alongside such a fluffy, wussy introduction, so I'll just rant on /. instead and hope someone posts something useful for a change..
Check for New Comments
Slashdot Login

Need an Account?

Forgot your password?
or Connect with...

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>