Thanks Red. That was enormously embarrassing.
Jim
Send parenscript-devel mailing list submissions to
parenscript-devel@common-lisp.net
To subscribe or unsubscribe via the World Wide Web, visit
http://common-lisp.net/cgi-bin/mailman/listinfo/parenscript-devel
or, via email, send a message with subject or body 'help' to
parenscript-devel-request@common-lisp.net
You can reach the person managing the list at
parenscript-devel-owner@common-lisp.net
When replying, please edit your Subject line so it is more specific
than "Re: Contents of parenscript-devel digest..."
Today's Topics:
1. Create doesn't create (ps_jim@emidium.com)
2. Re: Create doesn't create (Red Daly)
3. Catch forms shouldn't require a variable (Daniel Gackle)
4. Lexical scoping question (Daniel Gackle)
----------------------------------------------------------------------
Message: 1
Date: Fri, 05 Jun 2009 12:40:44 -0400
From: ps_jim@emidium.com
Subject: [parenscript-devel] Create doesn't create
To: <parenscript-devel@common-lisp.net>
Message-ID: <16286717.439541244220044718.JavaMail.servlet@perfora>
Content-Type: text/plain; charset=UTF-8
Hey all,
I'm new to parenscript so I hope this is a reasonable question
I think
(parenscript:ps (create :foo "bar" :blorg 1))
should return
{ foo : 'bar', blorg :1}
but it returns
create('foo', 'bar', 'blorg', 1);
which means it is falling through to a regular function.
I was looking at the source and there create is a 'define-ps-special-form' but it's gonna take me a while to figure out what is going on. Any thoughts about what I'm doing wrong?
This was in the last tarball and the latest from git.
Jim
------------------------------
Message: 2
Date: Fri, 5 Jun 2009 10:26:14 -0700
From: Red Daly <reddaly@gmail.com>
Subject: Re: [parenscript-devel] Create doesn't create
To: parenscript-devel <parenscript-devel@common-lisp.net>
Message-ID:
<f6700f0c0906051026o79a5cd35r424ddf9fba2a1c46@mail.gmail.com>
Content-Type: text/plain; charset="iso-8859-1"
Make sure you are using the 'create from the parenscript package:
(ps:ps (ps:create :foo "bar" :blorg 1))
that's my guess,
Red
On Fri, Jun 5, 2009 at 9:40 AM, <ps_jim@emidium.com> wrote:
> Hey all,
> I'm new to parenscript so I hope this is a reasonable question
>
> I think
>
> (parenscript:ps (create :foo "bar" :blorg 1))
>
> should return
>
> { foo : 'bar', blorg :1}
>
> but it returns
>
> create('foo', 'bar', 'blorg', 1);
>
> which means it is falling through to a regular function.
>
> I was looking at the source and there create is a 'define-ps-special-form'
> but it's gonna take me a while to figure out what is going on. Any thoughts
> about what I'm doing wrong?
>
> This was in the last tarball and the latest from git.
>
> Jim
>
> _______________________________________________
> parenscript-devel mailing list
> parenscript-devel@common-lisp.net
> http://common-lisp.net/cgi-bin/mailman/listinfo/parenscript-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://common-lisp.net/pipermail/parenscript-devel/attachments/20090605/b8cf5627/attachment.html
------------------------------
Message: 3
Date: Fri, 5 Jun 2009 22:54:58 -0600
From: Daniel Gackle <danielgackle@gmail.com>
Subject: [parenscript-devel] Catch forms shouldn't require a variable
To: parenscript-devel <parenscript-devel@common-lisp.net>
Message-ID:
<57952f8b0906052154j6d22a87bl6a89061c0efb6cee@mail.gmail.com>
Content-Type: text/plain; charset="iso-8859-1"
PS throws an error here:
(ps (try (a) (:catch nil (b))))
I think it should just gensym an identifier for the catch form. Sometimes
you just want to know whether an error occurred, not what it was.
This came up because I implemented something like try/catch in CL, for the
code that we compile to both CL and PS. If I stuff a variable in the catch
form, the CL compiler warns about an unused variable. So I wrote a wrapper
to do the above-mentioned gensym thing.
Daniel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://common-lisp.net/pipermail/parenscript-devel/attachments/20090605/31e4051f/attachment-0001.html
------------------------------
Message: 4
Date: Fri, 5 Jun 2009 23:10:18 -0600
From: Daniel Gackle <danielgackle@gmail.com>
Subject: [parenscript-devel] Lexical scoping question
To: parenscript-devel <parenscript-devel@common-lisp.net>
Message-ID:
<57952f8b0906052210j7587a0e1l3ca15ad8f3c85836@mail.gmail.com>
Content-Type: text/plain; charset="iso-8859-1"
I've played with the recent PS with lexical scoping, and it's grown on me.
My concerns about the readability of gensym'd suffixes are not turning out
to be as bad as I worried, and I'm noticing several benefits to the idea.
I'm hoping the recent batch of bugs we've reported can be fixed so we can
upgrade to the latest.
In the meantime, I'm trying to understand the intent behind this bit of
language redesign. Consider the following:
(ps (let ((a 123))
(blah a))
(alert a))
If this were really lexically scoped, the a in the alert form would be
undefined. But ps generates:
"var a = 123;
blah(a);
alert(a);"
Does this reflect what is intended? If so, is there a clear explanation of
just what "lexical scoping" is now offered by PS, i.e. what the rules are,
what we should expect, and what we should not expect?
Daniel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://common-lisp.net/pipermail/parenscript-devel/attachments/20090605/c2c8fdcc/attachment-0001.htm
------------------------------
_______________________________________________
parenscript-devel mailing list
parenscript-devel@common-lisp.net
http://common-lisp.net/cgi-bin/mailman/listinfo/parenscript-devel
End of parenscript-devel Digest, Vol 23, Issue 3
************************************************