17 ms·
GNU Guile 2.2.0
- _pmf_ 10y agoAny word about Windows support?
- davexunit 10y agoI saw on IRC that someone built it with cygwin. That's all I know, though.
- AlexeyBrin 10y agoIf you are using Windows 10, it should work under WSL (Windows System for Linux).
- lloydde 10y agoThe mailing list announcement is better both for the detailed content and not being served as difficult to read on mobile "justified" text: https://lists.gnu.org/archive/html/guile-devel/2017-03/msg00095.html https://lists.gnu.org/archive/html/guile-devel/2017-03/msg00...
- tambourine_man 10y agoThank you, I gave up reading it because of the justification. There was no "reader" version available for Safari either.
- deleted 10y ago[deleted]
- andrewvijay 10y agoWhy are those brackets there in the syntax? What's the need? It looks hard to read when the programs are bigger. Is there any super advantage to it?
- sn41 10y agoIt is a Lisp thing. If you have an editor like emacs with Scheme support, it is possible to format in a way that makes it quite easy to read: in fact, the formatting reveals the AST. A good explanation is in Chapter 1 of "SICP": https://mitpress.mit.edu/sicp/full-text/book/book-Z-H-10.html#%_sec_1.1.1 https://mitpress.mit.edu/sicp/full-text/book/book-Z-H-10.htm...
- tjpnz 10y agoLisp nostalgia?
- anoctopus 10y agoNostalgia is an odd word to use here when Guile is a Scheme, and so is part of the Lisp family.
- amirouche 10y agois lisp older than C?
- jabl 10y agoYes. It's the second-oldest high level programming language (after Fortran). - Fortran: 1957 - Lisp: 1958 - ... - C: 1972
- amirouche 10y agoI mean to say lisp family. so Fortran counts as part of C family.
- lucozade 10y agoC is part of the Algol family. Fortran was/is syntactically and semantically quite different. Algol was almost contemporaneous with Fortran and, although did learn from Fortran, was, at least partly, a reaction to its perceived flaws.
- stonewhite 10y agoAnyone tried GuileEmacs with this version and noticed any differences?
- davexunit 10y agoIIRC there is still some unmerged elisp implementation code out there that improves certain things, but performance is still bad because things are not yet optimized.
- mwcampbell 10y agoAlso check out this personal blog post from Andy Wingo, the primary developer: http://wingolog.org/archives/2017/03/15/guile-2-2-omg http://wingolog.org/archives/2017/03/15/guile-2-2-omg
- mschaef 10y agoThat whole blog is worth a good read through. Lots of interesting stuff, particularly if you care about dynamic language implementation.
- nerdponx 10y agoHow does this stack up against all the other popular Lisp variants out there?
- ArneBab 10y agoFor Schemes, see http://ecraven.github.io/r7rs-benchmarks/benchmark.html http://ecraven.github.io/r7rs-benchmarks/benchmark.html — my takeaway: - Performance: Guile 2.2.0 is halfways between the medium-speed Schemes and the high-performance Schemes. On par with Larceny, MIT, chicken and bigloo (and racket IIRC, but that’s missing in the benchmarks right now). - Compatibility: Guile 2.2.0 is among the 10 most complete r7rs Schemes, missing only circular lists (the other failed task succeeds when allowing a longer task time).
- Fice 10y agoNotably, they were able to achieve this performance with bytecode interpreter. Unlike other mentioned Scheme implementations, Guile does not use a native compiler (neither JIT nor AOT).
- hisham_hm 10y agoCongratulations to the Guile team for the release! They're great people, and the Lua community is happy for having shared a devroom at FOSDEM with them for two years in a row.
- porker 10y agoFor others looking for what Guile is: "Guile is an implementation of the Scheme programming language."
- pkd 10y agoFor me this is the most exciting part: Complete Emacs-compatible Elisp implementation Thanks to the work of Robin Templeton, Guile's Elisp implementation is now fully Emacs-compatible, implementing all of Elisp's features and quirks in the same way as the editor we know and love. This means we can finally have a proper GuileEmacs!
- ArneBab 10y agoThere’s still work to be done in pre-compiling the elisp in Guile Emacs to reduce the starttime (a lot).
- tmalsburg2 10y agoI never understood why people care so much about Emacs' start time. I start emacs maybe once a month and I'd say that anyone who's starting their Emacs so often that start time becomes a nuisance isn't using Emacs the way it's supposed to be used.
- flukus 10y agoA lot of people seem to use it with tmux or similar, where it get's started a lot more often, at least with no server running.
- lottin 10y agoSo it's not supposed to be started often? Where does it say that?
- kwhitefoot 10y agoWrong angle; the point is that Emacs is so useful that you want it open all the time. I have Emacs running always, I use Org-mode for time tracking the tasks in a sprint, I keep my personal diary in Org-mode, I program in Javascript, Python, Ruby. I run the Python interpreter in an Emacs buffer. I use Emacs for file management tasks, Dired is much better than pretty much all file other file managers except for the ability to drag and drop to other windowing applications. And the really serious Emacs users will have a much longer list.
- avar 10y agoFor those excited about the "Guile's Elisp implementation" in this release. The last major Guile release was 6 years ago, and much of this GuileEmacs work is still highly WIP and from my searching on emacs-devel seems to have stalled in 2015 for lack of volunteers. Just because Guile implements Elisp the language doesn't mean there isn't a ton of work to be done on Emacs itself to swap out its native VM for Guile, and it seems nobody's keen on finishing up that work.
- pmoriarty 10y agoWhat's left to be done?
- avar 10y agoI'm not involved in Emacs/Guile/GuileEmacs development. I just searched emacs-devel / EmacsWiki before writing that comment. Having said that it seems to be in a POC state, but is very slow and needs optimization. These two wiki pages provide a decent overview: https://www.emacswiki.org/emacs/GuileEmacs https://www.emacswiki.org/emacs/GuileEmacs & https://www.emacswiki.org/emacs/GuileEmacsTodo https://www.emacswiki.org/emacs/GuileEmacsTodo This "Preview: portable dumper," thread from November 2016 and spin-offs appear to be the most up-to-date emacs-devel discussion on the subject: https://lists.gnu.org/archive/html/emacs-devel/2016-11/threads.html#00625 https://lists.gnu.org/archive/html/emacs-devel/2016-11/threa... The older October 2015 "In support of guile-emacs" thread seems to have been written after development mostly tapered out, discusses some work to be done, and is a call for more development (which seems to have gone unanswered): https://lists.gnu.org/archive/html/emacs-devel/2015-10/threads.html#01538 https://lists.gnu.org/archive/html/emacs-devel/2015-10/threa... All the work on the Emacs integration appears to have been done by Robin Templeton in early 2015 with no commit since May 2015: http://git.hcoop.net/?p=bpt/emacs.git;a=shortlog http://git.hcoop.net/?p=bpt/emacs.git;a=shortlog
- 0xCMP 10y ago> Thanks to the work of Robin Templeton, Guile's Elisp implementation is now fully Emacs-compatible, implementing all of Elisp's features and quirks in the same way as the editor we know and love. Robin Templeton also seems to be the one which finished off the elisp compatibility on Guile here so it's probably because he saw that as important to get first.
- davexunit 10y agoThis release has been a long time coming and I'm happy that the day has finally arrived. There's a small patch of mine in this release (my first compiler hack ever) that optimizes comparison operations for floating point numbers. If anyone is interested in hacking on compilers, I highly recommend checking out Guile as one of the easier points of entry into the space. Andy Wingo, the author, even wrote up a blog post with plenty of project ideas to improve things: http://wingolog.org/archives/2016/02/04/guile-compiler-tasks http://wingolog.org/archives/2016/02/04/guile-compiler-tasks
- davexunit 10y agoTo try out Guile 2.2.0 easily from any GNU/Linux distro (from the full release notes): Bonus track! This release also contains a new experiment, a binary installation package for the x86_64 architecture. The GNU Guix project (https://guixsd.org/) has assembled a graph of package definitions (for example, GCC, glibc, Guile, and so on) and is able to build that graph in an entirely deterministic way starting from only a handful of trusted bootstrap binaries. Guix recently added a "guix pack" facility that can export build products from a Guix system, including all run-time dependencies. We have used the new "guix pack" to generate an experimental binary distribution for the Guile 2.2.0 release. If you are on an x86_64 system running GNU/Linux, begin by running the following commands: wget https://ftp.gnu.org/gnu/guile/guile-2.2.0-pack-x86_64-linux-gnu.tar.lz wget https://ftp.gnu.org/gnu/guile/guile-2.2.0-pack-x86_64-linux-gnu.tar.lz.sig gpg --verify guile-2.2.0-pack-x86_64-linux-gnu.tar.lz.sig If verification fails, then see above for instructions on how to import the appropriate GPG key. For reference, the pack's sha256sum is: c707b9cf6f97ecca3a4e3e704e62b83f95f1aec28ed1535f5d0a1d36af07a015 guile-2.2.0-pack-x86_64-linux-gnu.tar.lz Then in your root directory -- yes! -- do: cd / sudo tar xvf path/to/guile-2.2.0-pack-x86_64-linux-gnu.tar.lz This tarball will extract some paths into /gnu/store and also add a /opt/guile-2.2.0 symlink. To run Guile, just invoke: /opt/guile-2.2.0/bin/guile Voilà!
- vog 10y agoTechnical question: What are .lz files? Is this LZMA compression? If so, why not using the more popular .xz format?
- davexunit 10y agoI'm not sure but probably because it produced a smaller file than xz.
- clacke2 10y agoIt seems that https://en.wikipedia.org/wiki/Lzip https://en.wikipedia.org/wiki/Lzip came out at the time between lzma and xz, possibly because lzma lacked proper file headers and checksumming at the time. These days, some distros use lz and most use xz, probably mostly due to historical reasons.
- bitwize 10y agoCongrats to the Guile team. Remember -- Guile goes with everything.
- didibus 10y agoCan anyone tell me if Guile is relevant? The list of example programs written in Guile is small. EmacsLisp and not Scheme seems to be the Gnu lisp of choice. The VM is not the fastest and not the most portable. Is there any driver behind it?
- tathougies 10y agoYou usually don't write anything other than emacs extensions in emacs lisp -- it would be overkill to have to start emacs just to start an HTTP server. For these purposes, guile would be a better choice?
- tree_of_item 10y agoBesides being controlled by GNU, not really. Guilemacs is probably not going to happen either. I like Emacs and all, but I'm really not sure why we'd be excited about Guile. Andy is a really awesome guy but he's the only one contributing to Guile, so there's no way it's ever going to compete with things like Chez or Racket (which is moving to Chez soon as well).
- davexunit 10y agoAndy is not the only one contributing to Guile. He does a ton, for sure, but Guile is far from a one man show. There are 2 other maintainers and many other contributors.
- calebm 10y agoIt seems that guile and lua have similar goals (one of the largest being to function as an extension language). Anyone have practical pros/cons between them?
- amirouche 10y agoread https://news.ycombinator.com/item?id=13888550 https://news.ycombinator.com/item?id=13888550
- hackbinary 10y agoHow does Guile compare to Racket?
- amirouche 10y agoAFAIK+AFAIU Racket does have some specific kind of macros (ported to Guile but not in Guile distribution proper), There is guile-log that has no equivalent in Racket. Both support multiple language frontends but Racket seems to have more languages and in general Racket community seems bigger.
- 3legcat 10y agoInteresting talk on Guile 2.2: Guile 2.2 performance notes (FOSDEM 2016) https://www.youtube.com/watch?v=fU4Tly29Tps https://www.youtube.com/watch?v=fU4Tly29Tps