una suma simbolos recorrer programacion operadores listas lista lenguaje funciones scheme

suma - ¿Hay personas usando el lenguaje de programación Scheme?



scheme lenguaje de programacion pdf (21)

"¿Alguien realmente está usando este lenguaje?"

Paul Graham , famoso.

Acabo de comenzar a estudiar ciencias de la computación en mi universidad donde nos enseñan programación en Scheme.

Desde que aprendí C ++ durante los últimos 6 años, Scheme parece un poco extraño para mí. Mis instructores me dicen que puedes escribir cualquier programa que puedas escribir en C o Java con él.

¿Alguien realmente está usando este lenguaje?


Absolutamente. El esquema es bueno para una serie de diferentes clases de problemas. Jim Blandy está trabajando en una versión de Scheme llamada Minor que se integra mucho más de cerca con los sistemas nativos y está destinada a ser un rendimiento.

Entiendo que LilyPond utiliza Guile para la extensibilidad, aunque no sé que contendría a LilyPond como el ejemplo brillante ideal de software, ya que hirió seriamente mi instalación de OS X ...


Estoy aprendiendo sobre esto en mi clase de Diseño de Lenguaje de Programa, tiene algunos usos limpios. Solo lo usaría para un problema que se presta fácilmente a la recursividad final.


Estoy jugando con IronScheme en estos días, pero no conozco a nadie que use Scheme para el trabajo real.


Lo usé en la universidad, pero no lo he usado mucho desde entonces.

Si no te gusta la recursividad, te recomiendo aprender Scheme o Lisp. Aprenderás a pensar recursivamente sobre todo tipo de cosas. ¿La recursión es siempre el camino correcto a seguir? Por supuesto no. Pero es una herramienta útil para tener en la caja de herramientas.

Siempre aliento a los desarrolladores a aprender nuevos idiomas. Cuantos más idiomas aprenda y domine, más abstractamente pensará en los problemas. Mientras menos estés vinculado a un idioma específico, es más probable que elijas el idioma que mejor se adapte a tu problema.


Scheme te hará pensar diferente sobre la programación. ¡Solo trata de ser de mente abierta!


Todos los idiomas pueden usarse para escribir cualquier cosa, con suficiente esfuerzo :)

Sin embargo, Scheme es genial, saber que Scheme tiende a influir en tu programación en otros idiomas, en mi experiencia.

Las macros de esquema son extremadamente potentes, y call-with-current-continuation una función de mindwarping.

La prueba clásica es Estructura e Interpretación de Programas de Computadora ("SICP"). Vale la pena leer.


Recientemente escuché en el podcast de que Reddit fue escrito originalmente en LISP.


Square USA lo usó para hacer la película Final Fantasy .

Aquí hay un artículo que publicaron en él: Pegar cosas juntas: esquema en la producción de contenido CG en tiempo real .

De ese papel:

En SIGGRAPH 2000 y 2001, el equipo de I + D de Square USA mostró la representación en tiempo real de escenas de la película completa generada por computadora `` Final Fantasy: The Spirits Within ''''.

[...]

Encontramos una gran ayuda tener un intérprete Scheme integrado en el motor de renderizado en tiempo real.


Más allá de la experiencia personal, lo más parecido a una conjetura objetiva es el índice TIOBE , que actualmente clasifica a LISP / Scheme 21 con una participación de mercado de 0,470%. TIOBE usa los resultados del motor de búsqueda para crear la lista. Obviamente, querrás tomar la lista (y cualquier otra suposición sobre el uso de Scheme) con un grano de sal.

Desvergonzada promoción: echa un vistazo a PLT Scheme . Han creado una comunidad agradable, ofrecen su IDE para muchas plataformas y le ofrecen una buena selección de bibliotecas lista para usar.

Aquí hay un artículo que describe PLT Scheme en una aplicación comercial: http://www.untyped.com/downloads/icfp068-welsh.pdf .


Hay bastantes implementaciones de esquema para la plataforma Java, se usan para el diseño de scripts y creación de prototipos de aplicaciones Java. Existe un marco web basado en la continuación para J2EE en el esquema, llamado SISCWeb .

El esquema Guile se usa como lenguaje de scripting en algunas aplicaciones de GNU, por ejemplo, GnuCash está principalmente escrito en Scheme.

También TinyScheme se usa como lenguaje de scripting para GIMP y algunas variaciones se usan en sistemas integrados.



¡Sí! Scheme es bastante interesante. Lo aprendí en mi primer año en la Universidad de Waterloo. Al principio es un poco diferente, especialmente si proviene de un OOP / antecedentes imperativos.

Hace muchas cosas buenas para ti, y el paradigma funcional es definitivamente uno que deberías explorar, aunque solo sea para obtener una perspectiva diferente.

También es bastante útil, por ejemplo, acabo de hacer un compilador para una versión súper simplificada de C, y no me lo podía imaginar sin un lenguaje funcional (:


Clojure es un lenguaje parecido a Scheme / Lisp que funciona en la JVM y es realmente bueno para el procesamiento paralelo (supuestamente). Lo mejor de usar Clojure es que tienes acceso a toda la API de Java y a cualquier otra biblioteca de Java.

Clojure es cada vez más popular entre los geeks del lenguaje, junto con Scala.


JavaScript es notablemente similar a Scheme en muchos sentidos (aunque faltan las versiones y el sistema numérico avanzado de Scheme).

Desde " Descripción general del lenguaje ECMAScript " (PDF). 2007-10-23. pp. 4. Consultado el 2009-05-03.

ES3 es un lenguaje simple, altamente dinámico, basado en objetos que toma sus principales ideas de los lenguajes Self y Scheme. El estilo de programación es una mezcla de programación funcional y basada en objetos: los principales mecanismos de abstracción en ES3 son las funciones de orden superior de alcance léxico y los objetos mutables ...


El esquema se usa principalmente con fines didácticos. Esa es una de las razones por las que no ha habido un sistema de módulos estándar hasta el (polémico) RSR6: cuando se escriben pequeños programas para la tarea, es inusual que se necesiten muchas bibliotecas grandes.

Scheme comenzó como un experimento para agregar OOP tipo Smalltalk a Lisp. Eventualmente cambió el sistema macro, agregó call/cc (y dynamic-wind , dynamic-unwind ), y creció un poco.

Aparte de los proyectos de GNU que usan Guile como lenguaje de scripting, no conozco ningún sistema de producción que use Scheme. Sin embargo, conozco un puñado de sistemas de producción que usan Lisp ( Orbitz tiene código Lisp en su sistema de reservas ).


Jazz Scheme es un entorno de esquema de código abierto basado en Gambit Scheme y parece promover agresivamente los usos industriales, compruébalo:

Esquema de Jazz

Informan nuevos usos en sus noticias:

Noticias de Jazz Scheme

Según esta página, Scheme está (o estaba) en uso en: DEC, TI, Tektronix, HP y Sun.

El CV de LinkedIn de este tipo informa haber usado Chez Scheme en Disney.

Simplemente buscando en Google un poco puede revelar mucho. En este caso, confirma la observación de que una vez escuché que el uso de Scheme es bastante omnipresente, pero no muy público.


No mucha gente lo usa como sé, pero definitivamente vale la pena echarle un vistazo (si es que acaba de intentar programar en otro paradigma, para que aprendas a pensar diferente). Tienes suerte de poder tomar una clase que usa Scheme, ya que la mayoría de las universidades actualmente enseñan Java. Aquí hay un buen enlace si desea ver algunas conferencias de MIT o trabajar en problemas de muestra, etc.

MIT Open Courseware - Estructura e interpretación de programas informáticos

También hay un libro de acompañamiento disponible en línea gratis (Estructura e Interpretación de Programas de Computadora).

ACTUALIZAR:

Para aquellos interesados ​​en un lenguaje que es similar al esquema que hace uso de la JVM y puede acceder a las bibliotecas de Java (ya que muchas universidades usan Java), consulte Clojure . Tal vez este se convierta en el nuevo lenguaje de elección para la introducción de la informática (¡todos podemos esperar!).


He aprendido Scheme durante más de 2 años y me ha ayudado significativamente como programador. Me enseñó a pensar de manera diferente y comprender conceptos y vínculos más profundos entre los lenguajes de programación. De hecho, es cierto que puede escribir cualquier programa en Scheme como en Java y C, sin embargo, es bastante difícil. Hay una serie de transformaciones de programa que deben tener lugar antes de que pueda interpretarse como código Java o código C. Vale la pena, al menos, aprender lo básico.


Aquí en Rusia desarrollamos software usando PLT Scheme. Y se vende bien;)