Search

First, I'll start with the why? I love Symphony, I love XSLT, but I work in a shop that has put 11 years of work into a Perl application to run everything from site management to shopping carts to project management and reporting. What we don't have is an XSLT templating system. I'd love to be able to integrate ideas from Symphony into our site management system so I can still get to work with XSLT. Also, Perl is a mature language with a lot of available open source resources, including several modules for working with XSLT.

So, I am toying with the idea of porting Symphony to Perl, even though I have very little PHP or Perl programming experience. It may be misdirected energy, but I figure that this would be a great project to help me learn more about the Symphony backend. If (and it's a big IF) I ever finish the project, I'll have a good understanding of PHP, Perl, MySQL, CSS, and AJAX, and I'll have the tools to extend my work to Symphony Extensions, for both PHP and Perl. Plus, there is the potential to extend the reach of Symphony to a much wider audience. One of benefits would be a demonstration of how easy it would be to create portable XSLT applications that just work, regardless of the server environment.

That said, I'd like to first get a ruling from the development team about whether this is something that would be in line with the open source MIT license under which Symphony 2 Beta - Revision 5 has been released, and with their long-term goals for Symphony. The license pretty much says it:

All source code included in the "Symphony 2 Beta - Revision 5" archive is, 
unless otherwise specified, released under the MIT licence as follows:

----- begin license block -----

Copyright 2008 Alistair Kearney, Allen Chang, Scott Hughes

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

----- end license block -----

...but I'd rather not step on any toes. So, what do you think?

but I'd rather not step on any toes. So, what do you think?

Fine by us, but that's a pretty big undertaking. My Perl knowledge is fairly limited so I am unsure of the hurdles involved, but if it was just a code port, I guess it would be straight forward.

While we are talking IFs.... who would think that porting, or rather rebuilding symphony to use the zend framework would make any sense? I believe it could greatly simplify the core and add some features (user management, edit history,...), or not ?

Thanks for the ok, Alistair. I'm thinking this would be just a code port, basically duplicating the behaviour of the Symphony core in Perl. It would be a work of translating from PHP to Perl, simply to understand how both languages work. It is a big undertaking, so I don't expect to be done any time soon. I just want to start developing some understanding of how the backend works so I can potential understand enough to build my own extensions.

I started blogging with WordPress of all things. If I can get more acquainted with the more popular blogging engines, the better I'll be at recreating them in Symphony. Should it be WordPress or TextPattern? Well, WordPress has an XML export. That should be easy. But that's off topic. Back to porting Symphony to Perl.

A journey of a thousand miles begins with a single step.

Step one. Recreate the configuration settings.

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details