Re: [racket-users] Racket in a web page (via Whalesong)

2016-01-02 Thread Daniel Prager
Greg Trzeciak  wrote:
> I am also writing this post to show there is an interest in Javascript
Racket (and ClojureScript competitor).

Just wondering: is Whalesong the only option for Racket targeting JS, or
are there other options available or under development?


Dan

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-users] Racket in a web page (via Whalesong)

2015-12-30 Thread Greg Trzeciak
Is there any update on

> The problem is that the functions  expand  and  compile  are implemented in 
> C. 
> This means that it is not possible to run the bytecode-to-JavaScript compiler 
> on neither the expander 
> nor the expanded-code-to-bytecode. Two essential components are therefore 
> missing before
> it is possible to bootstrap Racket in Whalesong.
> 
> 
> The expander was recently reimplemented. Maybe there is hope for an expander 
> written in Racket
> at some point.

Hi

Is there any update on the progress of rewriting compiler and expander in 
Racket. From this RacketCon2014 video: https://youtu.be/Uw8m4QF4k1E?t=22m55s
my understanding is that it is an ogoing process that is currently happening.

I didn't find any more recent examples of roadmap and milestones for Racket and 
would gladly satisfy my curiosity.

Also, what other work (assuming compiler and expander done) would be required 
in order to bring Whalesong on par with ClojureScript?

Greg

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-users] Racket in a web page (via Whalesong)

2015-12-30 Thread Greg Trzeciak
Thanks Jens,

I am actually more interested with long term viability of Whalesong than being 
able to run it right now, hence my questions related to bootstrapped version 
(and compiler + expander in Racket). My current understanding is that outside 
of narrow use Whalesong is too risky a bet at least until it becomes 
selfhosted. Please correct me if I am wrong but I am not a compiler person 
rather someone deciding on the future direction of his projects impressed with 
Racket but unsure on the direction and priorities for future Racket.  
I am also writing this post to show there is an interest in Javascript Racket 
(and ClojureScript competitor).

Best wishes

Greg

On Wednesday, December 30, 2015 at 6:48:29 PM UTC+1, Jens Axel Søgaard wrote:
> As far as I know no one is working on updating Whalesong to the latest 
> version of Racket.
> However it is easy to download an older version of Racket where Whalesong 
> works fine.
> 
> 
> FWIW there are two aspects that needs work:
> 
> 
>   - handle (maybe just ignore) the (small) recent changes in the bytecode
>   - figure out how to adapt Whalesong to the new macro expander

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-users] Racket in a web page (via Whalesong)

2015-09-07 Thread Vincent St-Amour
Anton,

Vishesh Yadav has been doing some pretty cool things with Whalesong
lately, notably to make program sharing easier[1].

Vishesh will be speaking about this work at RacketCon on the 27th.
If you can't join us in person, the talk will also be streamed live and
recorded.

Vincent


[1] https://github.com/vishesh/whalebin


On Sun, 06 Sep 2015 23:08:10 -0500,
Anton Vodonosov wrote:
> 
> Hi,
> 
> Does anyone use Whalesong to script web pages?
> 
> As far as I understand the Racket design, Whalesong is enough to bootstrap 
> full Racket in a JS environment. It's a great opportunity. I would like very 
> much to have an interactive lisp development where I can develop both server 
> side and client side code, and to share code between client and server.
> 
> I wish to connect to a web page JS environment interactively (like from SLIME 
> I use for with Common Lisp) and control and modify my program without 
> reloading the page.
> 
> Javascript console in browsers is a substitution, but a poor-man's one, and 
> it's only Javascript; it would be grate to have it for lisp.
> 
> People are now inventing WebAssembly to simplify porting programmign 
> languages to javascript. ClojureScript was just recently made self hosted.
> 
> But Whalesong exists for years. Why no-one uses it? Is it not enough to 
> bootstrap a Racket compiler?
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to racket-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-users] Racket in a web page (via Whalesong)

2015-09-07 Thread Vishesh Yadav

Hi Anton,

There has been some work to make Whalesong self-hosted. I'm not sure if 
it works as I didn't try it. There are some language incompatibilities 
but your Racket code will just work otherwise, notably Big Bang programs.


Whalesong doesn't give you a REPL, but it will show you stacktraces 
corresponding to Racket source.


Vishesh

On 09/07/2015 12:08 AM, Anton Vodonosov wrote:

Hi,

Does anyone use Whalesong to script web pages?

As far as I understand the Racket design, Whalesong is enough to bootstrap full 
Racket in a JS environment. It's a great opportunity. I would like very much to 
have an interactive lisp development where I can develop both server side and 
client side code, and to share code between client and server.

I wish to connect to a web page JS environment interactively (like from SLIME I 
use for with Common Lisp) and control and modify my program without reloading 
the page.

Javascript console in browsers is a substitution, but a poor-man's one, and 
it's only Javascript; it would be grate to have it for lisp.

People are now inventing WebAssembly to simplify porting programmign languages 
to javascript. ClojureScript was just recently made self hosted.

But Whalesong exists for years. Why no-one uses it? Is it not enough to 
bootstrap a Racket compiler?



--
You received this message because you are subscribed to the Google Groups "Racket 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-users] Racket in a web page (via Whalesong)

2015-09-07 Thread Jens Axel Søgaard
2015-09-07 6:08 GMT+02:00 Anton Vodonosov :


> As far as I understand the Racket design, Whalesong is enough to bootstrap
> full Racket in a JS environment. It's a great opportunity. I would like
> very much to have an interactive lisp development where I can develop both
> server side and client side code, and to share code between client and
> server.
>

Whalesong can not bootstrap Racket.

Here is the short version of how Whalesong compiles a file foo.rkt

   1. The Whalesong compiler (running on Racket VM) reads the file foo.rkt.
   2. The standard  expand  is called.  Expand parses and expands all
constructs
producing a program without macros.
   3. The compiler now calls the standard  compile  functions which produces
   a sequence of bytecodes.
   4. The Whalesong bytecode-to-JavaScript compilers is called and a
JavaScript file is produced.
   [ 5. Any modules required by foo.rkt are also compiled ]

The problem is that the functions  expand  and  compile  are implemented in
C.
This means that it is not possible to run the bytecode-to-JavaScript
compiler on neither the expander
nor the expanded-code-to-bytecode. Two essential components are therefore
missing before
it is possible to bootstrap Racket in Whalesong.

The expander was recently reimplemented. Maybe there is hope for an
expander written in Racket
at some point.

The "selfhost" folder in the Whalesong repository was an effort to get the
Whalesong
bytecode-to-JavaScript running in the browser. That's doable - but not
enough to get a
selfhosting Racket system.

-- 
Jens Axel Søgaard

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[racket-users] Racket in a web page (via Whalesong)

2015-09-06 Thread Anton Vodonosov
Hi,

Does anyone use Whalesong to script web pages?

As far as I understand the Racket design, Whalesong is enough to bootstrap full 
Racket in a JS environment. It's a great opportunity. I would like very much to 
have an interactive lisp development where I can develop both server side and 
client side code, and to share code between client and server.

I wish to connect to a web page JS environment interactively (like from SLIME I 
use for with Common Lisp) and control and modify my program without reloading 
the page.

Javascript console in browsers is a substitution, but a poor-man's one, and 
it's only Javascript; it would be grate to have it for lisp.

People are now inventing WebAssembly to simplify porting programmign languages 
to javascript. ClojureScript was just recently made self hosted.

But Whalesong exists for years. Why no-one uses it? Is it not enough to 
bootstrap a Racket compiler?

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.