<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://permalink.gmane.org/gmane.lisp.qi">
    <title>gmane.lisp.qi</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi</link>
    <description/>
    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>1</syn:updateFrequency>
    <syn:updateBase>1901-01-01T00:00+00:00</syn:updateBase>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5429"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5428"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5427"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5426"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5425"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5424"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5423"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5422"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5421"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5420"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5419"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5418"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5417"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5416"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5415"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5414"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5413"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5412"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5411"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.lisp.qi/5410"/>
      </rdf:Seq>
    </items>
    <image rdf:resource="http://gmane.org/img/gmane-25t.png"/>
    <textinput rdf:resource=""/>
  </channel>
  <image rdf:about="http://gmane.org/img/gmane-25t.png">
    <title>Gmane</title>
    <url>http://gmane.org/img/gmane-25t.png</url>
    <link>http://gmane.org</link>
  </image>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5429">
    <title>Re: some array functions</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5429</link>
    <description>&lt;pre&gt;Its in github coded by Eric, but not in standard lib.  Mainly when you
need a missing list function you can either look for it in lib or
write 3 lines of code.  Mostly I just write the code.  I think if we
had an IDE which allowed people to find this stuff it would encourage
use.  But I expect most people would still roll their own.

Mark

On 21 May, 16:38, Jacob &amp;lt;submissionfight...-KK0ffGbhmjU&amp;lt; at &amp;gt;public.gmane.org&amp;gt; wrote:

&lt;/pre&gt;</description>
    <dc:creator>Mark Tarver</dc:creator>
    <dc:date>2013-05-22T10:33:27</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5428">
    <title>Shen under Python downloads are up</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5428</link>
    <description>&lt;pre&gt;Both the Python ports are now on the download page.

http://www.shenlanguage.org/Download/download.html

Mark

&lt;/pre&gt;</description>
    <dc:creator>Mark Tarver</dc:creator>
    <dc:date>2013-05-22T09:06:45</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5427">
    <title>Re: can do?</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5427</link>
    <description>&lt;pre&gt;Not only can do, but can do superbly.   My second book 'The
Specification of Programming Languages' is precisely about using Shen
as a metalanguage to describe and formally prove properties of other
languages.

A lot of my time is divided right now.  I've embarked on a regime of
intensive qigong, yoga meditation and exercise to build the body to
the state of efficiency I need.   Four hours a day goes into this.  On
top of that we have an expanded second edition of TBoS with an
improved presentation and more examples.  A program is under
development for generating standalones from all these ports.  Some
videos will appear on Shen.   I've also got on the backburner the SECD-

Somebody kindly provided 'Lisp in Small Pieces' to the project and
asked me to review the book.  I passed it to Willi who codes in C.  My
impressions were that it was very comprehensive and I need to take
time to look at it.  I'll review it here when I do.

Mark

On 22 May, 00:25, Raoul Duke &amp;lt;rao...-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&lt;/pre&gt;</description>
    <dc:creator>Mark Tarver</dc:creator>
    <dc:date>2013-05-22T08:50:37</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5426">
    <title>can do?</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5426</link>
    <description>&lt;pre&gt;http://stackoverflow.com/questions/3037643/typed-metaprogramming-languages

&lt;/pre&gt;</description>
    <dc:creator>Raoul Duke</dc:creator>
    <dc:date>2013-05-21T23:25:07</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5425">
    <title>Re: some array functions</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5425</link>
    <description>&lt;pre&gt;There is a standard lib that has such fns. 

On Tuesday, May 21, 2013 4:17:00 AM UTC-4, newbie wrote:

&lt;/pre&gt;</description>
    <dc:creator>Jacob</dc:creator>
    <dc:date>2013-05-21T15:38:58</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5424">
    <title>some array functions</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5424</link>
    <description>&lt;pre&gt;(define it0
     N -&amp;gt; (it N []))

(define it 
    0 L -&amp;gt; L
    N L -&amp;gt; (it (- N 1) (cons (- N 1) L)))


(define timesL
   _ [] -&amp;gt; []
   [X|Y] [P|Q] -&amp;gt; (cons (* X P) (timesL Y Q)))

(define addL
   _ [] -&amp;gt; []
   [X|Y] [P|Q] -&amp;gt; (cons (+ X P) (addL Y Q)))


(define add0
    [] N -&amp;gt; N
   [X|Y] N -&amp;gt; (add0 Y (+ N X)))

(define adds
     L -&amp;gt; (add0 L 0))

(define take
   0 _ -&amp;gt; []
   N [X|Y] -&amp;gt; [X|(take (- N 1) Y)])

(define drop
      0 L -&amp;gt; L
    N [X|Y] -&amp;gt; (drop (- N 1) Y))

(define fromto 
    N M L -&amp;gt; (take (- M N) (drop N L)))

(define abs
   N -&amp;gt; (* N -1) where (&amp;lt; N 0)
   N -&amp;gt; N)

(define dropflast
   N L -&amp;gt; (take (- (length L) (abs N)) L))

(define droplast
      [] -&amp;gt; []
     [A] -&amp;gt; A
   [X|Y] -&amp;gt; (if (not (= (tail Y) [])) (droplast Y) (head Y)))

(define from
   0 L -&amp;gt; (head L)
   N [X|Y] -&amp;gt; (from (- N 1) Y))

(define fromp
   [] _ -&amp;gt; []
   [X|Y] L -&amp;gt;  (cons (from X L) (fromp Y L)))

(define amend
    N M L -&amp;gt; (append (take N L) (cons M (drop (+ N 1) L))))

(define tie
        _ 0 -&amp;gt; []
        L N -&amp;gt; (appe&lt;/pre&gt;</description>
    <dc:creator>newbie</dc:creator>
    <dc:date>2013-05-21T08:17:00</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5423">
    <title>Re: wish i could code this up in shen some day as a nice demo</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5423</link>
    <description>&lt;pre&gt;
(define f 
     M N L -&amp;gt; (- (M N L)
                 (- (* (M N L) (M (+ N 1) L))
                    (* (M N L) (M (- N 1) L)))))

(define st
      _ [] -&amp;gt; []
      N L -&amp;gt; (if (&amp;lt; (- (length L) N) 3) (st _ [])
              (cons (msten N L) (st (+ N 1) L)))) 
(define sten 
      N L -&amp;gt; (f from N L))

(define msten
      N L -&amp;gt; (f sten N L))

(define st0
      L -&amp;gt; (st 2 L))

(define m
       L 0 -&amp;gt; L
       L M -&amp;gt; (m (st0 L) (- M 1)))

(define addto
   N L -&amp;gt; (map (/. X (+ N X)) L))

(define timesto
   N L -&amp;gt; (map (/. X (* N X)) L))

(define from
   0 L -&amp;gt; (head L)
   N [X|Y] -&amp;gt; (from (- N 1) Y))

(define it0
     N -&amp;gt; (it N []))

(define it 
    0 L -&amp;gt; L
    N L -&amp;gt; (it (- N 1) (cons (- N 1) L)))

(define q1 -&amp;gt; (addto 1.0 (timesto 0.1 (it0 20))))

\* (m (q1) 3) *\



&lt;/pre&gt;</description>
    <dc:creator>W. Yang</dc:creator>
    <dc:date>2013-05-20T02:09:52</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5422">
    <title>Re: wish i could code this up in shen some day as a nice demo</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5422</link>
    <description>&lt;pre&gt;

On Thursday, May 16, 2013 11:10:56 AM UTC-7, raould wrote:


 (define sten
      N L -&amp;gt; (- (from N L)
                 (- (* (from N L) (from (+ N 1) L))
                    (* (from N L) (from (- N 1) L)))))

(define st
      _ [] -&amp;gt; []
      N L -&amp;gt; (if (&amp;lt; (- (length L) N) 3) (st _ [])
              (cons (- (sten N L)
                       (- (* (sten N L) (sten (+ N 1) L))
                          (* (sten N L) (sten (- N 1) L))))
                                              (st (+ N 1) L))))
(define st0
      L -&amp;gt; (st 2 L))

(define m
       L 0 -&amp;gt; L
       L M -&amp;gt; (m (st0 L) (- M 1)))

(define addto
   N L -&amp;gt; (map (/. X (+ N X)) L))

(define timesto
   N L -&amp;gt; (map (/. X (* N X)) L))

(define from
   0 L -&amp;gt; (head L)
   N [X|Y] -&amp;gt; (from (- N 1) Y))

(define it0
     N -&amp;gt; (it N []))

(define it 
    0 L -&amp;gt; L
    N L -&amp;gt; (it (- N 1) (cons (- N 1) L)))

(define q1 -&amp;gt; (addto 1.0 (timesto 0.1 (it0 20))))

\* (m (q1) 3) *\

&lt;/pre&gt;</description>
    <dc:creator>W. Yang</dc:creator>
    <dc:date>2013-05-19T16:58:38</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5421">
    <title>Re: how to do native calls in shen-js</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5421</link>
    <description>&lt;pre&gt;

You have to define a wrapper first:

    // a sample of wrapper for 3-place function
    Shen.mkfunction("some-func", 3, function f(args) {
      if (args.length &amp;lt; 3) return [Shen.type_func, f, 3, args]
      return some_func(args[0], args[1], args[2])
    })

You can put all required wrappers in a file which you can load from Shen by:

    (shenjs.load "wrappers.js")

&lt;/pre&gt;</description>
    <dc:creator>Ramil Farkhshatov</dc:creator>
    <dc:date>2013-05-17T05:05:37</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5420">
    <title>Bug fix release for shen-on-java</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5420</link>
    <description>&lt;pre&gt;The bug reported here:
https://groups.google.com/d/msg/qilang/mxcG2TNTTv0/IfrT9i2mID8J

Has been fixed and a new release uploaded.

&lt;/pre&gt;</description>
    <dc:creator>joel-mS8KwmfSQcZBDgjK7y7TUQ&lt; at &gt;public.gmane.org</dc:creator>
    <dc:date>2013-05-17T03:34:44</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5419">
    <title>how to do native calls in shen-js</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5419</link>
    <description>&lt;pre&gt;Hi,

How can I call a native JS function from shen-js?

Răzvan

&lt;/pre&gt;</description>
    <dc:creator>Răzvan Rotaru</dc:creator>
    <dc:date>2013-05-16T20:52:54</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5418">
    <title>wish i could code this up in shen some day as a nice demo</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5418</link>
    <description>&lt;pre&gt;http://okmij.org/ftp/meta-programming/HPC.html#stencil
care of
http://lambda-the-ultimate.org/node/4739

&lt;/pre&gt;</description>
    <dc:creator>Raoul Duke</dc:creator>
    <dc:date>2013-05-16T18:10:56</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5417">
    <title>Re: First release of PyShen - a port of Shen in Python</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5417</link>
    <description>&lt;pre&gt;Congrats;  I'll put this and the other addition by Ramil on download.

Mark

On May 14, 9:15 pm, Matthieu Lagacherie
&amp;lt;matthieu.lagache...-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt; wrote:

&lt;/pre&gt;</description>
    <dc:creator>Mark Tarver</dc:creator>
    <dc:date>2013-05-16T11:34:06</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5416">
    <title>First release of PyShen - a port of Shen in Python</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5416</link>
    <description>&lt;pre&gt;Hello,

I'm pleased to announce that we have released a new port of Shen in pure 
Python. This port supports Shen version 11 and it passes the Shen test 
suite. 

The implementation of the parser and compiler follows the ShenRuby port of 
Greg Spurrier. The compiler generates directly Python bytecode with the 
Python AST module.

The source code is available on GitHub at https://github.com/yminer/pyshen . 
With Python installed you can launch the repl with:

$ python
Shen 2010, copyright (C) 2010 Mark Tarver
released under the Shen license
www.shenlanguage.org, version 11
running under Python, implementation: pyshen
port 0.135 ported by Matthieu Lagacherie and Yannick Drant

(0-)

Any questions, bug reports, and other feedback on this release are welcomed.

Regards,

Matthieu

&lt;/pre&gt;</description>
    <dc:creator>Matthieu Lagacherie</dc:creator>
    <dc:date>2013-05-14T20:15:11</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5415">
    <title>Re: Shen wiki</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5415</link>
    <description>&lt;pre&gt;I'd suggest to put a link to the wiki on the main site.

Răzvan

joi, 14 martie 2013, 13:21:18 UTC+2, Mark Tarver a scris:

&lt;/pre&gt;</description>
    <dc:creator>Răzvan Rotaru</dc:creator>
    <dc:date>2013-05-14T14:57:34</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5414">
    <title>Re: Finding the type signature of a function</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5414</link>
    <description>&lt;pre&gt;Hi Artella. The `shen-` prefix has changed to `shen.` in Shen9, if you
change that the code should work in the Chibi and Ruby ports:

Shen 2010, copyright (C) 2010 Mark Tarver
released under the Shen license
www.shenlanguage.org, version 10
running under Scheme, implementation: chibi-scheme
port 0.5 ported by Bruno Deferrari


(0-) (shen.variant? (shen.typecheck print B) [A --&amp;gt; A])
true

(1-) (element? print (value shen.*signedfuncs*))
true


On Mon, May 13, 2013 at 7:23 PM, Artella Coding
&amp;lt;artella.coding-gM/Ye1E23mwN+BqQ9rBEUg&amp;lt; at &amp;gt;public.gmane.org&amp;gt; wrote:



&lt;/pre&gt;</description>
    <dc:creator>Bruno Deferrari</dc:creator>
    <dc:date>2013-05-14T14:49:17</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5413">
    <title>development setup for running in the browser</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5413</link>
    <description>&lt;pre&gt;Hi,

I recently discovered Shen and intend to play with the Javascript version. 
I'm interested in GUI stuff in the browser, and I need a setup that makes 
development quick and easy. I wish for a REPL, but I can also live with 
edit &amp;amp; refresh page. Here are my questions:

1/ what editor do you recommend? are there extensions for shen in one of 
the popular editor? (emacs mode, vim plugin, etc.)
2/ Is there a way to have a REPL in the browser? (i.e. edit with the 
editor, evaluate and display results in the browser)
3/ In order to have the second setup (edit &amp;amp; refresh page), I need a way to 
automatically compile to javascript when I refresh the page. Has anybody 
already done this (or something similar)?

Any other suggestions are very welcome. Thanks.

Răzvan Rotaru

&lt;/pre&gt;</description>
    <dc:creator>Răzvan Rotaru</dc:creator>
    <dc:date>2013-05-14T14:03:46</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5412">
    <title>Re: Finding the type signature of a function</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5412</link>
    <description>&lt;pre&gt;Hi jpd, thanks. I only managed to get this to work on Joel's java port (
https://www.assembla.com/code/shen-on-java/git/nodes), for which I got : 

Shen 2010, copyright (C) 2010 Mark Tarver
www.shenlanguage.org, version 7
running under Java, implementation: Shen on Java
port 0.7.2 ported by Joel Shellman

(0-) (shen-variant? (shen-typecheck print B) [A --&amp;gt; A])
true

(1-) (element? print (value shen-*signedfuncs*))
true



When I tried on the latest Ruby port (
https://github.com/gregspurrier/shen-ruby) I got : 

Shen 2010, copyright (C) 2010 Mark Tarver
released under the Shen license
www.shenlanguage.org, version 11
running under Ruby, implementation: ruby 1.9.3
port 0.5.0 ported by Greg Spurrier


(0-) (shen-variant? (shen-typecheck print B) [A --&amp;gt; A])
The function shen-typecheck is undefined

(1-)  (element? print (value shen-*signedfuncs*))
variable shen-*signedfuncs* has no value


When I tried on the Chibi Shen port (https://github.com/tizoc/chibi-shen) I 
got : 

Shen 2010, copyright (C) 2010 Mark Tar&lt;/pre&gt;</description>
    <dc:creator>Artella Coding</dc:creator>
    <dc:date>2013-05-13T22:23:56</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5411">
    <title>Re: Shen-py</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5411</link>
    <description>&lt;pre&gt;Hi, I tried the commands jpd suggested in 
https://groups.google.com/forum/#!msg/qilang/w1JpNPfTc08/KX87ZFS6AFcJ but 
they did not work in this new port. They also did not work in the 
ChibiScheme port and the Ruby port, but they did work in Joel's java port. 
Thanks.

&lt;/pre&gt;</description>
    <dc:creator>Artella Coding</dc:creator>
    <dc:date>2013-05-13T22:41:49</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5410">
    <title>Re: chibi-scheme port of Shen on Github</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5410</link>
    <description>&lt;pre&gt;Hi, I tried the commands jpd suggested in 
https://groups.google.com/forum/#!msg/qilang/w1JpNPfTc08/KX87ZFS6AFcJ but 
they did not work. I got the following : 

Shen 2010, copyright (C) 2010 Mark Tarver
released under the Shen license
www.shenlanguage.org, version 11
running under Scheme, implementation: chibi-scheme
port 0.5 ported by Bruno Deferrari

(0-) (shen-variant? (shen-typecheck print B) [A --&amp;gt; A])
undefined variable: (shen-variant?)

(1-) (element? print (value shen-*signedfuncs*))
variable has no value:: (shen-*signedfuncs*)


&lt;/pre&gt;</description>
    <dc:creator>Artella Coding</dc:creator>
    <dc:date>2013-05-13T22:45:35</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.lisp.qi/5409">
    <title>Re: Shen-py</title>
    <link>http://permalink.gmane.org/gmane.lisp.qi/5409</link>
    <description>&lt;pre&gt;

Works for me after I replaced `shen-` with `shen.`:

    Shen 2010, copyright (C) 2010 Mark Tarver
    released under the Shen license
    www.shenlanguage.org, version 10
    running under python, implementation: all
    port 0.0.1 ported by Ramil Farkhshatov


    (0-) (shen.variant? (shen.typecheck print B) [A --&amp;gt; A])
    true

    (1-) (element? print (value shen.*signedfuncs*))
    true

&lt;/pre&gt;</description>
    <dc:creator>Ramil Farkhshatov</dc:creator>
    <dc:date>2013-05-14T05:28:49</dc:date>
  </item>
  <textinput rdf:about="http://search.gmane.org/?group=$group=gmane.lisp.qi">
    <title>Search Engine</title>
    <description>Search the mailing list at Gmane</description>
    <name>query</name>
    <link>http://search.gmane.org/?group=$group=gmane.lisp.qi</link>
  </textinput>
</rdf:RDF>
