Here are some notes regarding the wiki running at this site.
The implementation of this wiki is derived from [UseModWiki], with numerous heavy-handed hacks by JohnBelmonte. The changes are mostly usability improvements and removal of excess features. The source code [1] and current running version info [3] are available.
However more important than implementation, the markup and to a certain extent the interface is what really defines a wiki system. As long as a community can settle on these issues, it's quite easy to change the underlying implementation.
In fact, other than minor maintenance, development of the current implementation may not continue. The prime motivations being:
- this implementation is in Perl which is slow (when lacking mod_perl)
- a wiki implementation [2] with similar functionality (but using CSS) (maybe derived from an old version of usemod) exists and has these advantages:
- code base is 1/3rd the size of current implementation
- written in PHP and uses SQL database
So a future task will be to modify that new wiki to use the same markup we have here, and switch implementations.
Of course it's also possible to write a Lua implementation. However one should note that 90% of a wiki implementation is spent on details such as database access, edit conflict resolution, page history management, security and robustness, etc. In other words it's not as simple as just making a markup-to-HTML translator, and languages such as Python and PHP may be better suited for such implementations due to their extensive web and system support libraries. If someone is interested in running Lua code dynamically within wiki pages that's another story however...
In support of a Lua wiki implementation: because of its security capabilities, Lua may be a good candidate for making a [CommunityProgrammableWiki].
-- BayleShanks
- [Sputnik] is very much designed with this in mind, though minding the need for control as well. Certain things like templates, etc can be edited as any wiki content (provided you have access). Additional code ("plugins") can be written and tested off-site and then pulled in using [LuaRocks] -- YuriTakhteyev?
There now exists a powerful Lua-based web platform tool with database support etc. It is called [Aranha] and is being developed and used by members of the community.
-- DanielSilverstone
(As of Aug 2015, the account for Aranha appears to be removed from [Pepperfish])
-- JfVanKesteren?
We could even get this wiki on [Sputnik] which is pure Lua and runs on the [Kepler] platform that can use a database system too through [LuaSQL]
-- GeorgePetsagourakis
(As of May 2014, Sputnik is no longer supported but continues to be available as is. ( See [Timeline on Sputnik site] )
-- JfVanKesteren?
RecentChanges · preferences
edit · history
Last edited March 7, 2023 4:04 pm GMT (diff)