[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ANN] An impudent introduction to Guile

From: Cao Jin
Subject: Re: [ANN] An impudent introduction to Guile
Date: Sat, 6 Feb 2016 17:16:13 +0800
User-agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1

Hi Panicz,

Thank you for these information.

On 2/6/2016 14:08, Panicz Maciej Godek wrote:

2016-02-06 1:47 GMT+01:00 Cao Jin <address@hidden>:
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

I've actually used its code for Singular Value Decomposition to perform Principal Component Analysis.
OK, I will try it later.

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.

It's great to see this result.

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.

As described above, I think it is worth trying Scheme for numerical computing. Your work is appreciated!


reply via email to

[Prev in Thread] Current Thread [Next in Thread]