From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Jan Wedekind Newsgroups: gmane.lisp.guile.user Subject: Re: [ANN] An impudent introduction to Guile Date: Sat, 06 Feb 2016 10:18:41 +0000 Message-ID: <2a52a201-45c5-4a0a-9ef7-683e13636138@email.android.com> References: <0MfmrK-1aduFO2FHA-00NEPX@mail.gmx.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1454753967 16114 80.91.229.3 (6 Feb 2016 10:19:27 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 6 Feb 2016 10:19:27 +0000 (UTC) Cc: "guile-user@gnu.org" To: Panicz Maciej Godek ,Cao Jin Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Sat Feb 06 11:19:18 2016 Return-path: Envelope-to: guile-user@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1aRzxV-0002MS-Pz for guile-user@m.gmane.org; Sat, 06 Feb 2016 11:19:18 +0100 Original-Received: from localhost ([::1]:52835 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aRzxV-0004aQ-0e for guile-user@m.gmane.org; Sat, 06 Feb 2016 05:19:17 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:46643) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aRzxL-0004aJ-OZ for guile-user@gnu.org; Sat, 06 Feb 2016 05:19:09 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aRzxI-0004Ay-Ii for guile-user@gnu.org; Sat, 06 Feb 2016 05:19:07 -0500 Original-Received: from basicbox4.server-home.net ([195.137.212.26]:44322) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aRzxI-0004Ac-CW for guile-user@gnu.org; Sat, 06 Feb 2016 05:19:04 -0500 Original-Received: from [192.168.1.215] (unknown [95.150.200.130]) by basicbox4.server-home.net (Postfix) with ESMTPA id C30171530663; Sat, 6 Feb 2016 11:18:59 +0100 (CET) User-Agent: K-9 Mail for Android In-Reply-To: X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 195.137.212.26 X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Original-Sender: guile-user-bounces+guile-user=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.user:12367 Archived-At: On 6. Februar 2016 06:08:42 GMT+00:00, Panicz Maciej Godek wrote: >Hi > >2016-02-06 1:47 GMT+01:00 Cao Jin : > >> It's interesting. I have used Matlab for many years, but never tried >R. As >> for as I know, there are tons of state-of-the-art library in R and >Matlab. >> >> After skimming your paper, I wander that >> 1) Are these library used in your code example implemented by >yourself? Or >> other libraries are called, such as LAPACK for linear algebra? >> > >Everything is either written from scratch, or uses one of the helper >libraries (two such libraries are included in the repo; the other is >SRFI-1). >The point of the book is that it is not a tutorial on using libraries, >but >it explains some methods and translates these explanations to Scheme, >so >that they can be modified and extended easily. > >If you are looking for some serious numerical libraries for Scheme, >there's a very powerful scmutils package available > >http://www.cs.rochester.edu/~gildea/guile-scmutils/ > >I've actually used its code for Singular Value Decomposition to perform >Principal Component Analysis. > >2) Is it easy to use scheme and your library, or maybe some others, to >do >> computational job? In practice, those who use R or Matlab want their >idea >> to be proved quickly, not to spend time on coding style, right? >> >> I think it depends on a point of view. I initially tried using R, but >it >was causing many unexpected problems, but I already knew Scheme quite >well, >and for me even implementing the libraries from scratch wasn't that >much >of a job. >But the book is mostly about fun, and about understanding. >Also, interfacing Guile with Emacs through Geiser is an incredible >productivity boost. > >Interestingly, when I benchmarked the genetic algorithm that I wrote >with >genalg package from R, the Scheme version run in Guile actually >outperformed the R version, although it was written in completely >performance-naive style. > >On the other hand, if you wanted to use the decision trees classifier, >you'd probably want to apply memoization. > >If scheme can do most computational job as python numpy does, I will >switch >> to it. >> > >I think that in practice Scheme can be even more convinient, as it >provides >native support for complex numbers > >I also think it would be helpful to interface Guile with plot >generation. I >see that Nala has a guile-plot package, but I haven't tried it. I >personally wrote some code for generating LaTeX pgfplots for the >project, >and can add it to the repo if you llike. Interesting. Will have a look at how they expose operators. Myself I have implemented http://github.com/wedesoft/aism for array opera= tions. --=20 Jan Wedekind http://www.wedesoft.de/