[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: How to make GNU Guile more successful
Re: How to make GNU Guile more successful
Sun, 05 Mar 2017 11:57:20 +0000
K-9 Mail for Android
According to Alan Kay's research, the future might be a lot of domain specific
mini languages. I.e. languages tomorrow are going to be like libraries today.
Guile supports custom languages which makes it future proof at least to some
Myself, I am using Scheme because of it's unique metaprogramming facilities
(Scheme macros) and GNU Guile because it has multiple-dispatch object oriented
programming (unlike Racket). Also Guild's native interface with the Boehm
Garbage Collector is quite easy to use.
On 5. März 2017 03:09:54 GMT+00:00, Erik Edrosa <address@hidden> wrote:
>On 03/04/2017 06:41 PM, Alejandro Sanchez wrote:
>> If I may add my two cents as a Scheme layman: the question is not so
>much about making Guile more popular, but about making Scheme itself
>> One big reason for Python’s popularity is something I haven’t seen
>mentioned in this thread so far: if you know pseudocode you basically
>know Python already. Of course this is hyperbolic, there are a lot of
>finer details to Python, but the superficial simplicity of Python makes
>you think you already know the language and that you can get started
>right away. By the time you encounter the more arcane aspects of Python
>you have already invested enough time into it that you will put up with
>learning something new.
>> Scheme on the other hand is weird; weird in a good way, but still
>weird. For me the reason for picking up Scheme was working my way
>through SICP, but even before that I had heard of the Lisp family.
>Every time I tried to find out what the fuss was about Lisp all I could
>find was nebulous concepts like “it’s a programmable programming
>language” without explaining what that even meant and why I would ever
>want to use it.
>> Of course once I got over the weird parentheses and I understood why
>they are actually a beneficial aspect I liked it. Yet, even after
>getting into Scheme there are problems. The r5rs standard is pretty
>limited, and so every implementation does its own thing. There was not
>even a standard module system until r6rs. Unfortunately r6rs never got
>fully adopted by any of the major implementations, so we are back to
>where we were with r5rs more or less. r7rs-small looks like it could
>finally fill in the most glaring gaps, and r7rs-large is still nowhere
>> All this is very frustrating, and getting into a new language is a
>long-term commitment to learn something new. When faced with Python,
>just use what everyone else is using.
>> I think someone here mentioned the lack of a proper Scheme IDE, other
>than Dr. Racket for Racket. I don’t use IDEs anymore, but I can see how
>that can be a problem for other people who only want to do intermediate
>scripting rather than write entire applications. Writing a full IDE
>would be quite a lot of work, so perhaps integrating with existing IDEs
>would be better. Think something like Geiser for programs other than
>Emacs. There is the “language server protocol" by Microsoft, the idea
>is to have a standardised protocol that can be supported by a language
>server and an editor application.
>> I know it’s Microsoft, but this is just a specification. With this
>protocol one would write a Scheme server that receives instructions
>form the editor via RPC and sends the result back to the server via RPC
>as well. This would allow using the same Scheme server regardless of
>the editor (Emacs, Vim, Neovim, Eclipse, …). I had wanted to write
>something like this for Neovim myself, but I don’t know enough of
>> I hope these ramblings of mine offer something useful from an
>outsider perspective to you guys.
>I think one issue when you want to compare languages like Python to
>Scheme is that these languages are dominated by a single
>Python, Ruby, Go, Rust, Clojure, and many others have a single dominate
>implementation. The compatibility of libraries isn't something devs
>usually have to worry about (except for breaking changes in the
>like Python 2 to Python 3). I agree with how r5rs standard is pretty
>limited, languages with multiple implementations tend to have pretty
>large standards so that these implementations are somewhat compatible.
>am liking the direction of r7rs and I hope it will bring scheme
>implementations closer together. Probably the other option for scheme
>would be for everyone to get behind a single implementation like Chez
>Of course that isn't the only thing needed to make Scheme or Guile more
>popular. I believe a programming language needs a somewhat unique and
>powerful library or framework, an awesome application to show off the
>power of the language, good tooling, and some luck.
>The language server protocol is pretty cool and I would like to see a
>lisp implement it. An IDE for a lisp obviously needs to implement more
>features to be useful, I believe being able to easily interact with a
>REPL is one of those.
Diese Nachricht wurde von meinem Android-Mobiltelefon mit K-9 Mail gesendet.
Re: How to make GNU Guile more successful, Alejandro Sanchez, 2017/03/04
Re: How to make GNU Guile more successful, Erik Edrosa, 2017/03/04
Re: How to make GNU Guile more successful, Arne Babenhauserheide, 2017/03/05
Re: How to make GNU Guile more successful, Nala Ginrut, 2017/03/05
Re: How to make GNU Guile more successful, Alejandro Sanchez, 2017/03/05
Re: How to make GNU Guile more successful, Arne Babenhauserheide, 2017/03/06
Re: How to make GNU Guile more successful, Matt Wette, 2017/03/05
Re: How to make GNU Guile more successful, Erik Edrosa, 2017/03/06
Re: How to make GNU Guile more successful, David Kastrup, 2017/03/05
Re: How to make GNU Guile more successful, Vítor De Araújo, 2017/03/09