Buscando un buen lenguaje del lado del servidor que permita a los jugadores cargar código que se puede ejecutar

Tuve una idea de un programa que quiero escribir, pero cuál sería el mejor problema para mi idioma.

Si tengo un juego de carreras de autos y quiero permitir que los usuarios envíen códigos para nuevas pistas de carreras interactivas en 3D (piense en pistas como las que se encuentran en la película de Speed ​​Racer), vehículos y para sus vehículos autónomos, entonces, crearían la IA para su automóvil que permitirá al automóvil determinar cómo manejar los peligros.

Por lo tanto, necesito un lenguaje que se ejecute rápidamente, y como parte de un mapamundi que el servidor tiene de todas las razas posibles disponibles, y sus diversos estados.

Tengo curiosidad de si esta sería una buena razón para considerar la creación de un DSL en Scala, por ejemplo.

No quiero tener que reiniciar una aplicación para cargar archivos dll o jar nuevos, por lo que muchos idiomas compilados serían un problema.

Estoy abierto a Linux o Windows, y para los idiomas, la mayoría de los lenguajes de scripting, F #, Scala, Erlang o la mayoría de los OOP que puedo programar.

El usuario podrá monitorear el funcionamiento de su vehículo y, si tiene más de una IA cargada para ese automóvil, cuando llegue a ciertos obstáculos, debería poder intercambiar un programa de AI por otro a pedido.

Actualización: hasta ahora las soluciones son javascript, usando V8 y Lua.

Tengo curiosidad por si esto puede ser un buen uso para un DSL, en realidad 3 separados. 1 para crear un hipódromo, otro para controlar un coche de carreras y el tercero para crear nuevos coches.

Si es así, ¿Haskell, F # o Scala serían buenas opciones para esto?

Actualizar: ¿Tendría sentido que diferentes partes terminaran en diferentes idiomas? Por ejemplo, si se usó Erlang para controlar el auto y Lua para el auto en sí, y también para la pista de carreras animada?

Respuestas a la pregunta(5)

Su respuesta a la pregunta