Va bene iniziare a utilizzare Iron Ruby e Iron Python nei sistemi di produzione?
Sì. Sono responsabile per un sistema software che funziona 24/7/365. Non critico per la vita o la morte, ma molto importante per il denaro. E usa IronPython, anche se non molto - per lo più piccoli script per cose che sono più facili da fare in un linguaggio dinamico. Ciò significa: Funziona, non blocca il tuo processo o mangia folle quantità di memoria senza una buona ragione. Ma la base di utenti e la "comunità linguistica" sono molto più piccoli di ad es. C#, quindi potrebbe essere più difficile trovare aiuto online.
Aggiungi: Informazioni sulla "MS caduta di ferro *" - novità: non mi interesserebbe molto di questo. Esistono molti buoni linguaggi che non sono sviluppati attivamente da Microsoft. Finché c'è uno sviluppo attivo, finché fa ciò che vuoi che faccia e finché puoi trovare supporto se non riesci a capire cosa sta succedendo, dovresti stare bene. Ma è probabilmente più una questione di gusti che un punto tecnico.
Inoltre, sono previsti requisiti aggiuntivi per l'hosting?
Per IronPython 1.0 (che è ancora utilizzabile) sono necessari solo due assiemi. Per 2.0, sono necessari anche gli assembly DLR, ma nessuno di questi è molto grande o ha dipendenze esterne (di cui sono a conoscenza).
E, per i punti bonus, dato che F # è un linguaggio di programmazione funzionale nello stesso modo in cui Python è, non v'è alcun vantaggio di utilizzare uno sopra l'altro all'interno del framework .NET?
Come detto delnan, F # è un linguaggio funzionale, Python no. Python è un linguaggio multiparadigm che supporta alcuni concetti di programmazione funzionale come espressioni lambda o list comprehensions, ma anche C#. F # e Python sono animali molto diversi.
Le differenze principali sono:
- F # è compilato per IL dal compilatore F # (non è un linguaggio dinamico), IronPython può essere compilato o interpretato in fase di esecuzione
- F # è staticamente tipizzato con inferenza di tipo , Python viene digitato in modo dinamico (il controllo del tipo viene eseguito in fase di esecuzione)
- F # è un linguaggio funzionale: supporta elementi come la corrispondenza dei modelli, funzioni di ordine superiore e tipi, metaprogrammazione. È davvero fantastico se devi implementare un algoritmo estremamente complesso che può essere implementato più facilmente in un linguaggio funzionale e vuoi interfacciarlo con il codice C#. (L'ultima parte è la mia opinione personale.)
- Python è principalmente un linguaggio OOP/imperativo.È davvero fantastico per aggiungere script a un'applicazione C# esistente. (L'ultima parte è la mia opinione personale.)
Se dirci di più su ciò che si vuole fare, forse possiamo darvi ingresso più specifiche o suggerire altre alternative.
È possibile trovare questo interessante prima di iniziare: http://bit.ly/dl7YC9 – Lloyd
Sì, come Lloyd fa notare, questo è un tempismo abbastanza incredibilmente cattivo per la tua domanda, lì ... – Frosty840
Python non è un linguaggio funzionale . – delnan