Live data from Hacker News

Chicken Scheme 5.0

lists.nongnu.org

61–70 of 89 posts

Re: Chicken Scheme 5.0

#61

Is there some lisp that has offers nearly as powerful and fast data processing and tensor algebra facilities like Pandas and Numpy of Python? I would love to use a lisp but am not sure how well are they going to manage with huge 2-3D arrays.

You could always just use Hy, which is a clojuresque language that runs on top of python and can use its libraries.

Hy is awesome, it's a pleasure to use and you can always convert is straight to readable Python to debug. Access to regular Python libraries is seamless.

[0] https://learnxinyminutes.com/docs/hy/

[1] http://docs.hylang.org/en/stable/quickstart.html

Re: Chicken Scheme 5.0

#62
post #12

Earlier quoted context omitted.

JOOI, what's your embeddable Scheme of choice?

Guile or Chibi depending on what I want. Guile is about 2mb and seriously fast. Chibi is tiny and not very fasy.

Surprised to see Guile weighing in at 2mb - my experience with it on Linux was a much larger install. What makes the Linux packages so much larger out of curiosity? I profiled it at more like 50-80mb when I compiled it a couple of months ago.

Re: Chicken Scheme 5.0

#63

Is there some lisp that has offers nearly as powerful and fast data processing and tensor algebra facilities like Pandas and Numpy of Python? I would love to use a lisp but am not sure how well are they going to manage with huge 2-3D arrays.

You could always just use Hy, which is a clojuresque language that runs on top of python and can use its libraries.

Ok. Perhaps that's the language. Which IDE/editor has the most intelligent support for it? There seems to be no Hy plugin for PyCharm (e.g. IntelliJ Idea supports Clojure nicely AFAIK).

Re: Chicken Scheme 5.0

#64
post #39

Looked really cool. Downloaded it via Homebrew but my first test file[1] ran into a myriad of issues like 'unbound variable: use', 'unbound variable: printf', 'import had trouble expanding the macro: srfi-1' (paraphrasing). Not sure if the Homebrew recipe is broken but I would love to use this for some of my side projects. Congrats on the release! [1] test.scm (use srfi-1) (define (test number1 number2) (printf "Sum:…

This is an old example. This should now be something like (import (chicken format)) (define (test number1 number2) (printf "Sum: ~s" (+ number1 number2))) (test 1 2) If you're trying to actually use srfi-1, that's now imported via (import srfi-1). (use...) no longer exists.

You can use two spaces at the beginning of the line to get code mode:

  ;(use srfi-1)                ; 

Re: Chicken Scheme 5.0

#65
post #58

Great to see this. I liked using Chicken on Linux, but unfortunately for me, I am on Windows and do not like using Cygwin or Mingw to compile it for Windows. There is no current MSVS solution as far as I know for now. I use Racket, Extempore [1], and I play with Shen [2] for my lispy appetite. Shen has been ported to Chez Scheme, which is also what Racket is being re-written in (sort of). [1] https://extemporelang.gi…

Not sure if this will work for your use case but have you tried compiling it with WSL? It's much more convenient way to work with Linux software on Windows but may not be what you're looking for if you want to link a library in to a Windows project.

Re: Chicken Scheme 5.0

#66

Earlier quoted context omitted.

You could always just use Hy, which is a clojuresque language that runs on top of python and can use its libraries.

Ok. Perhaps that's the language. Which IDE/editor has the most intelligent support for it? There seems to be no Hy plugin for PyCharm (e.g. IntelliJ Idea supports Clojure nicely AFAIK).

Hy has a nice Emacs plug-in (hy-mode) which I use. Other than that I'm aware of Vim and Atom support. I'm not really sure how intelligent they are though.

Re: Chicken Scheme 5.0

#67
One of the hard problems in CS is naming things. WHY do scheme implementations decide to name stuff by SRFI numbers? Even if you've been using the language a lot, numbers don't make very much sense. I want to import the standard list library -- not library #1. Even (import srfi-1-lists) would be better than (import srfi-1).

In addition, such names make the language more approachable for new users. Not only do they have to know that SRFI exist, but they have to look over all of them to see if one exists for what they need.

Re: Chicken Scheme 5.0

#68
post #8

I wrote an IRC bot[1] to get a feel for Scheme in general earlier this year. I chose Chicken for it, which got me to look into Cheney on the MTA and other implementation details which were really interesting. The FFI is really nice, given that Chicken compiles to C. The Chicken IRC channel was a lot of help early on. All in all an enjoyable experience! [1] https://github.com/sebcat/kylling/blob/master/kylling.scm

I actually came across this the other day. I recently got into using IRC and wanted to learn lisp, so I decided to make an IRC bot. I wanted to get an idea of how this would work in Chicken Scheme (since the documentation for the irc egg was not great) and the only one I could find was your kylling.scm bot. So thank you for putting the code for kylling.scm out there because it helped me get started with the IRC bots I am maintaining now.

Re: Chicken Scheme 5.0

#69

Earlier quoted context omitted.

Currently, this comment is heavily downvoted, which I do not understand. If Julia warrants mentioning as having a lispy core, then it’s at least as valid to point out R’s deeply lisp-inspired (and technical implementation based) heritage. I mean, scratch the surface on any of the FFI docs, and you’ll see that SEXPRs are right there lurking barely beneath the surface: http://dirk.eddelbuettel.com/code/rcpp.html EDIT:…

> and you’ll see that SEXPRs are right there lurking barely beneath the surface Then why the surface? Why can't we just have a lisp with a good data-science library? Scheme seems the easiest of all the programming languages to me. I bet I can teach Scheme (not including advanced FP stuff though) to anybody faster than any other language although I have never used it to code anything serious (because libraries), I act…

Because they made the decision to be S-compatible, as many statisticians used S+ at the time. At that point in time, the real lispers all used X-Lisp Stat: https://en.wikipedia.org/wiki/XLispStat (in fact, some people objected to the journal of statistical software on the basis that it would only cover XLispStat).

Re: Chicken Scheme 5.0

#70

Earlier quoted context omitted.

It’s much closer than people think. R originally built on a Scheme runtime, and the DNA of Scheme is still lurking pretty close to the surface. The meta programming facilities in R still look very lispy, and are used to good effect throughout the Tidyverse family of packages. If I had one wish, it would be to see something like the Tidyverse exist in something still closer to Scheme... like Racket.

If it's all Scheme under the hood, why can't it be backported easily?

This is valid R

  sum(1:10)
This is also valid R:

  (sum (1:10))
Post reply on HN