BasictoPHP
# BasictoPHP

PluriBASIC (anteriormente llamado BasictoPHP) es una variación del lenguaje de programación BASIC, y actualmente es utilizada para programación de scripts de PHP. Esta implementación de BASIC se comenzó a programar a principios del 2010. El lenguaje, aunque muy sencillo, implementa el potencial de PHP, pero con la sencillez del BASIC.

## Historia

Muchos programadores prefieren el lenguaje de programación BASIC sobre otros lenguajes de programación, tal es el caso de los desarrolladores de PluriBASIC. A principios del 2010, se comenzó a trabajar en esta implementación de BASIC, y actualmente se encuentra en su versión 5.0, y tiene soporte para sistemas operativos desde Windows XP hasta Windows 10.

Ahora el compilador soporta compilaciones para Android, PHP, y un tipo de CGI binario basado en Windows cuando se utiliza el compilador PowerBASIC. Anteriormente podía manejar ASP pero ha sido descartado para simplificar las actualizaciones y mantenimiento del compilador. Actualmente están trabajando en compatibilidad con aplicaciones para iOS.

Las principales razones que llevaron a sus desarrolladores a trabajar en este compilador fueron su disgusto por la sintaxis de PHP y sus inconveniencias a la hora de depurar el código, y su gusto por la sintaxis de BASIC. Para alguien que comienza con la programación, acostumbrarse al ambiente de programación de Java es extremadamente difícil (ya lo es para programadores de experiencia!), así que un ambiente simple hace la curva de aprendizaje menos marcada.

## Implementación del lenguaje

La sintaxis del BASIC utilizada para este compilador es muy similar (por no decir idéntica) a la de PowerBASIC, aunque con las limitaciones que conlleva la conversión a otros lenguajes, como por ejemplo PHP, que es un lenguaje influenciado principalmente por C++.

Debido a dichas limitaciones, muchas funciones aún no han podido ser emuladas (y otras probablemente nunca lo serán) en PluriBASIC, por ejemplo el soporte para assembler o los punteros de variable. Los comandos GOSUB y GOTO también sufren del mismo mal, ya que el soporte de PHP para emular estos dos comandos es limitado.

Algunas funciones especialmente útiles son el uso de macros, los cuales son una versión moderna de comandos de legado como DEF FN. Además, todas las plataformas soportadas incluyen funciones nativas para el acceso a bases de datos de una manera sencilla, utilizando tipos de dato definidos por el usuario.

Aunque algunas de las plataformas soportadas no permiten algunas de las funciones ofrecidas por PluriBASIC, este las ofrece. Por ejemplo, Java no permite parámetros opcionales, sin embargo PlruriBASIC permite usar parámetros opcionales en los módulos, los cuales son después compilados para Java.

