[Pharo-project] jtalk fun
Go to http://jtalk-project.org/ Open development tools -> Workspace Evaluate: Tetris new appendToJQuery: 'body' asJQuery play. Laurent.
Cool. But how do we move parts? On 5 avr. 2011, at 15:16, laurent laffont wrote:
Go to http://jtalk-project.org/
Open development tools -> Workspace
Evaluate:
Tetris new appendToJQuery: 'body' asJQuery
play.
Laurent.
Noury Bouraqadi http://car.mines-douai.fr/noury -- -6th National Conference on âControl Architecture of Robotsâ 24-25 may 2011, Grenoble area, France http://car2011.inrialpes.fr/ -19th ESUG International Smalltalk Conference 22-26 August 2011, Edinburgh, UK http://www.esug.org/Conferences/2011 -19èmes Journées Francophones sur les Systèmes Multi-Agents (JFSMAâ11) http://www.univ-valenciennes.fr/congres/jfsma2011/ 17-19 Octobre 2011, Valenciennes, France
Le mercredi 06 avril 2011 à 12:28 +0200, Noury Bouraqadi a écrit :
Cool. But how do we move parts?
Hmm, you don't... I only wrote the field and pieces, the game isn't working yet (and I didn't think someone would find it... kudos to Laurent :-) Cheers, Nico
On 5 avr. 2011, at 15:16, laurent laffont wrote:
Go to http://jtalk-project.org/
Open development tools -> Workspace
Evaluate:
Tetris new appendToJQuery: 'body' asJQuery
play.
Laurent.
Noury Bouraqadi http://car.mines-douai.fr/noury -- -6th National Conference on âControl Architecture of Robotsâ 24-25 may 2011, Grenoble area, France http://car2011.inrialpes.fr/
-19th ESUG International Smalltalk Conference 22-26 August 2011, Edinburgh, UK http://www.esug.org/Conferences/2011
-19èmes Journées Francophones sur les Systèmes Multi-Agents (JFSMAâ11) http://www.univ-valenciennes.fr/congres/jfsma2011/ 17-19 Octobre 2011, Valenciennes, France
-- Nicolas Petton http://www.nicolas-petton.fr
On Wed, Apr 6, 2011 at 12:48 PM, Nicolas Petton <petton.nicolas@gmail.com>wrote:
Le mercredi 06 avril 2011 à 12:28 +0200, Noury Bouraqadi a écrit :
Cool. But how do we move parts?
Hmm, you don't...
I only wrote the field and pieces, the game isn't working yet (and I didn't think someone would find it... kudos to Laurent :-)
Ahaha I was just looking for examples and this is in the example category ;) Laurent
Cheers, Nico
On 5 avr. 2011, at 15:16, laurent laffont wrote:
Go to http://jtalk-project.org/
Open development tools -> Workspace
Evaluate:
Tetris new appendToJQuery: 'body' asJQuery
play.
Laurent.
Noury Bouraqadi http://car.mines-douai.fr/noury -- -6th National Conference on âControl Architecture of Robotsâ 24-25 may 2011, Grenoble area, France http://car2011.inrialpes.fr/
-19th ESUG International Smalltalk Conference 22-26 August 2011, Edinburgh, UK http://www.esug.org/Conferences/2011
-19èmes Journées Francophones sur les Systèmes Multi-Agents (JFSMAâ11) http://www.univ-valenciennes.fr/congres/jfsma2011/ 17-19 Octobre 2011, Valenciennes, France
-- Nicolas Petton http://www.nicolas-petton.fr
Cool. The only problem in JTalk is for interfacing with JS you have to create new classes and use jsbody-methods ({'alert("hello")'}). In OMeta's JS/Smalltalk, you can reference and call JS-Objects directly (alert value: 'hello') at the cost of semantic ("atput" "a: t: p: u: t:" and "atput:" all refer to the same method/function, for example). Somehow I find CoffeeScript cleaner in this regard. CoffeeScript is no Smalltalk, though. :( On Wed, Apr 6, 2011 at 1:34 PM, laurent laffont <laurent.laffont@gmail.com>wrote:
On Wed, Apr 6, 2011 at 12:48 PM, Nicolas Petton <petton.nicolas@gmail.com>wrote:
Le mercredi 06 avril 2011 à 12:28 +0200, Noury Bouraqadi a écrit :
Cool. But how do we move parts?
Hmm, you don't...
I only wrote the field and pieces, the game isn't working yet (and I didn't think someone would find it... kudos to Laurent :-)
Ahaha I was just looking for examples and this is in the example category ;)
Laurent
Cheers, Nico
On 5 avr. 2011, at 15:16, laurent laffont wrote:
Go to http://jtalk-project.org/
Open development tools -> Workspace
Evaluate:
Tetris new appendToJQuery: 'body' asJQuery
play.
Laurent.
Noury Bouraqadi http://car.mines-douai.fr/noury -- -6th National Conference on âControl Architecture of Robotsâ 24-25 may 2011, Grenoble area, France http://car2011.inrialpes.fr/
-19th ESUG International Smalltalk Conference 22-26 August 2011, Edinburgh, UK http://www.esug.org/Conferences/2011
-19èmes Journées Francophones sur les Systèmes Multi-Agents (JFSMAâ11) http://www.univ-valenciennes.fr/congres/jfsma2011/ 17-19 Octobre 2011, Valenciennes, France
-- Nicolas Petton http://www.nicolas-petton.fr
Good point Richard, and this isn't written in stone ;) nico 2011/4/8 Richard Durr <richard.durr@googlemail.com>
Cool. The only problem in JTalk is for interfacing with JS you have to create new classes and use jsbody-methods ({'alert("hello")'}). In OMeta's JS/Smalltalk, you can reference and call JS-Objects directly (alert value: 'hello') at the cost of semantic ("atput" "a: t: p: u: t:" and "atput:" all refer to the same method/function, for example).
Somehow I find CoffeeScript cleaner in this regard. CoffeeScript is no Smalltalk, though. :(
On Wed, Apr 6, 2011 at 1:34 PM, laurent laffont <laurent.laffont@gmail.com
wrote:
On Wed, Apr 6, 2011 at 12:48 PM, Nicolas Petton <petton.nicolas@gmail.com
wrote:
Le mercredi 06 avril 2011 à 12:28 +0200, Noury Bouraqadi a écrit :
Cool. But how do we move parts?
Hmm, you don't...
I only wrote the field and pieces, the game isn't working yet (and I didn't think someone would find it... kudos to Laurent :-)
Ahaha I was just looking for examples and this is in the example category ;)
Laurent
Cheers, Nico
On 5 avr. 2011, at 15:16, laurent laffont wrote:
Go to http://jtalk-project.org/
Open development tools -> Workspace
Evaluate:
Tetris new appendToJQuery: 'body' asJQuery
play.
Laurent.
Noury Bouraqadi http://car.mines-douai.fr/noury -- -6th National Conference on âControl Architecture of Robotsâ 24-25 may 2011, Grenoble area, France http://car2011.inrialpes.fr/
-19th ESUG International Smalltalk Conference 22-26 August 2011, Edinburgh, UK http://www.esug.org/Conferences/2011
-19èmes Journées Francophones sur les Systèmes Multi-Agents (JFSMAâ11) http://www.univ-valenciennes.fr/congres/jfsma2011/ 17-19 Octobre 2011, Valenciennes, France
-- Nicolas Petton http://www.nicolas-petton.fr
I do hope ^^ This makes working with "native" Javascript-Libraries hard (remembers me of how this is done in ObjJ). Another problem is the extension of native JS "types" which can conflict with other libraries as well. I have a feeling that his can be solved by using some form of automatic wrapping like underscore.js uses to extend native JS-Arrays: _(someArray).canCallCoolforEachMethodNow() . A ST dispatch method (asSmalltalkObject(someJavascriptObject).nowICanCallSmalltalkObjectsMethods() ) could also swap "undefined" and "null" for nil then automatically. However, this would bring a small runtime cost. Switching to a fully externalized and decoupled message-send implementation like in ObjJ would allow DNU then as well. smalltalkMessageSend(someObject, 'doSomething:', anObject); RD On Fri, Apr 8, 2011 at 9:44 PM, nicolas petton <petton.nicolas@gmail.com>wrote:
Good point Richard, and this isn't written in stone ;)
nico
2011/4/8 Richard Durr <richard.durr@googlemail.com>
Cool. The only problem in JTalk is for interfacing with JS you have to create new classes and use jsbody-methods ({'alert("hello")'}). In OMeta's JS/Smalltalk, you can reference and call JS-Objects directly (alert value: 'hello') at the cost of semantic ("atput" "a: t: p: u: t:" and "atput:" all refer to the same method/function, for example).
Somehow I find CoffeeScript cleaner in this regard. CoffeeScript is no Smalltalk, though. :(
On Wed, Apr 6, 2011 at 1:34 PM, laurent laffont < laurent.laffont@gmail.com> wrote:
On Wed, Apr 6, 2011 at 12:48 PM, Nicolas Petton < petton.nicolas@gmail.com> wrote:
Le mercredi 06 avril 2011 à 12:28 +0200, Noury Bouraqadi a écrit :
Cool. But how do we move parts?
Hmm, you don't...
I only wrote the field and pieces, the game isn't working yet (and I didn't think someone would find it... kudos to Laurent :-)
Ahaha I was just looking for examples and this is in the example category ;)
Laurent
Cheers, Nico
On 5 avr. 2011, at 15:16, laurent laffont wrote:
Go to http://jtalk-project.org/
Open development tools -> Workspace
Evaluate:
Tetris new appendToJQuery: 'body' asJQuery
play.
Laurent.
Noury Bouraqadi http://car.mines-douai.fr/noury -- -6th National Conference on âControl Architecture of Robotsâ 24-25 may 2011, Grenoble area, France http://car2011.inrialpes.fr/
-19th ESUG International Smalltalk Conference 22-26 August 2011, Edinburgh, UK http://www.esug.org/Conferences/2011
-19èmes Journées Francophones sur les Systèmes Multi-Agents (JFSMAâ11) http://www.univ-valenciennes.fr/congres/jfsma2011/ 17-19 Octobre 2011, Valenciennes, France
-- Nicolas Petton http://www.nicolas-petton.fr
Le vendredi 08 avril 2011 à 22:18 +0200, Richard Durr a écrit :
I do hope ^^
This makes working with "native" Javascript-Libraries hard (remembers me of how this is done in ObjJ). Does it look *that* hard?
Another problem is the extension of native JS "types" which can conflict with other libraries as well. I have a feeling that his can be solved by using some form of automatic wrapping like underscore.js uses to extend native JS-Arrays: _(someArray).canCallCoolforEachMethodNow() . Yes, but I like the fact that Jtalk maps Smalltalk constructs one-to-one with JS equivalents.
A ST dispatch method (asSmalltalkObject(someJavascriptObject).nowICanCallSmalltalkObjectsMethods() ) could also swap "undefined" and "null" for nil then automatically. However, this would bring a small runtime cost. Switching to a fully externalized and decoupled message-send implementation like in ObjJ would allow DNU then as well. smalltalkMessageSend(someObject, 'doSomething:', anObject);
That's really interesting. Now, again, I would worry about the runtime cost. Jtalk maps message sends to function calls. That's what makes Jtalk fast. Cheers, Nico -- Nicolas Petton http://www.nicolas-petton.fr
On Mon, Apr 18, 2011 at 9:51 AM, Nicolas Petton <petton.nicolas@gmail.com>wrote:
This makes working with "native" Javascript-Libraries hard (remembers me of how this is done in ObjJ).
Does it look *that* hard?
Yes, it makes me work with Javascript and not Smalltalk. Well maybe hard is not the real word, ugly fits better.
Another problem is the extension of native JS "types" which can conflict with other libraries as well. I have a feeling that his can be solved by using some form of automatic wrapping like underscore.js uses to extend native JS-Arrays: _(someArray).canCallCoolforEachMethodNow() . Yes, but I like the fact that Jtalk maps Smalltalk constructs one-to-one with JS equivalents.
Yeah, that is obviously nice but the change would be invisible to the smalltalk user.
A ST dispatch method
(asSmalltalkObject(someJavascriptObject).nowICanCallSmalltalkObjectsMethods() ) could also swap "undefined" and "null" for nil then automatically. However, this would bring a small runtime cost. Switching to a fully externalized and decoupled message-send implementation like in ObjJ would allow DNU then as well. smalltalkMessageSend(someObject, 'doSomething:', anObject);
That's really interesting. Now, again, I would worry about the runtime cost. Jtalk maps message sends to function calls. That's what makes Jtalk fast.
In a trivial test I did with Objective J, it did cost about half of the speed, but gives sending to null and undefined as well als DNU. Sigh. It would be so cool to have the compatability of CoffeeScript with the Synta and Functionality of Smalltalk without having to write JS.^^ RD
Le vendredi 22 avril 2011 à 16:20 +0200, Richard Durr a écrit :
In a trivial test I did with Objective J, it did cost about half of the speed, but gives sending to null and undefined as well als DNU.
Half the speed is really something. Another problem would be the resulting JS code. Right now the JavaScript output is very readable, and it makes debugging easy. Cheers, Nicolas -- Nicolas Petton http://www.nicolas-petton.fr
On 4/5/11, laurent laffont <laurent.laffont@gmail.com> wrote:
Go to http://jtalk-project.org/
Open development tools -> Workspace
Evaluate:
Tetris new appendToJQuery: 'body' asJQuery
play.
Laurent.
Hello Laurent I like that you continue to work on jtalk by adding examples to make it more easily accessible to play with. I evaluated the expression above but it did not start. Inspecting Tetris new gives an inspector on aTetris Inspecting Tetris new appendToJQuery: 'body' asJQuery opens another inspector on aTetris Nothing shows up. I am using Firefox 5.0 Do you have any suggestions how to find out where the error is? Hannes P.S. Would it be possible to have a simple AJAX example which, e.g. which loads a list of key/value pairs (e.g. web colors http://en.wikipedia.org/wiki/Web_colors (X11)) into a Smalltalk dictionary and display them in a dictionary browser? Maybe a variant with a plain text list and a JSON object list. P.S 2 The canvas is a HTMLcanvas in the sense of Seaside, not a HTML5 graphical canvas to draw on, right? I'd love to have a class Pen with the HTML5 graphical canvas. Even just with a subset of the methods. Then it would be possible to run classical examples from the purple book (e.g. Turtle graphic) P.S. 3. Tetris is fine but much simpler examples are probably better to help people getting started.
Nicolas Another idea for an example Connect the JavaScript InfoVis Toolkit (http://thejit.org/) and display the class hierarchy of JTalk in a view like http://thejit.org/static/v20/Jit/Examples/RGraph/example1.html or one of the other examples at http://thejit.org/demos/ Displaying the class hierarchy of JTalk would be one thing. Or in combination with an AJAX example displaying a graph defined in a JSON file. #Besides porting the InfoVis Toolkit Nicolas Garcia Belmonte ( http://blog.thejit.org/2009/09/30/force-directed-layouts/) develops PhiloGL. It is a WebGL framework for data visualization, creative coding and game development. --Hannes On 6/25/11, H. Hirzel <hannes.hirzel@gmail.com> wrote:
On 4/5/11, laurent laffont <laurent.laffont@gmail.com> wrote:
Go to http://jtalk-project.org/
Open development tools -> Workspace
Evaluate:
Tetris new appendToJQuery: 'body' asJQuery
play.
Laurent.
Hello Laurent
I like that you continue to work on jtalk by adding examples to make it more easily accessible to play with.
I evaluated the expression above but it did not start.
Inspecting Tetris new
gives an inspector on aTetris
Inspecting Tetris new appendToJQuery: 'body' asJQuery
opens another inspector on aTetris
Nothing shows up. I am using Firefox 5.0
Do you have any suggestions how to find out where the error is? Hannes
P.S. Would it be possible to have a simple AJAX example which, e.g. which loads a list of key/value pairs (e.g. web colors http://en.wikipedia.org/wiki/Web_colors (X11)) into a Smalltalk dictionary and display them in a dictionary browser? Maybe a variant with a plain text list and a JSON object list.
P.S 2 The canvas is a HTMLcanvas in the sense of Seaside, not a HTML5 graphical canvas to draw on, right? I'd love to have a class Pen with the HTML5 graphical canvas. Even just with a subset of the methods. Then it would be possible to run classical examples from the purple book (e.g. Turtle graphic)
P.S. 3. Tetris is fine but much simpler examples are probably better to help people getting started.
On Jun 25, 2011, at 8:25 AM, H. Hirzel wrote:
Nicolas
Another idea for an example
Connect the JavaScript InfoVis Toolkit (http://thejit.org/) and display the class hierarchy of JTalk in a view like http://thejit.org/static/v20/Jit/Examples/RGraph/example1.html or one
I would love to see such kind of animation in SMalltalk. I do not understand why this is possible in javascript and not in Smalltalk. Stef
of the other examples at http://thejit.org/demos/ Displaying the class hierarchy of JTalk would be one thing. Or in combination with an AJAX example displaying a graph defined in a JSON file.
#Besides porting the InfoVis Toolkit Nicolas Garcia Belmonte ( http://blog.thejit.org/2009/09/30/force-directed-layouts/) develops PhiloGL. It is a WebGL framework for data visualization, creative coding and game development.
--Hannes
On 6/25/11, H. Hirzel <hannes.hirzel@gmail.com> wrote:
On 4/5/11, laurent laffont <laurent.laffont@gmail.com> wrote:
Go to http://jtalk-project.org/
Open development tools -> Workspace
Evaluate:
Tetris new appendToJQuery: 'body' asJQuery
play.
Laurent.
Hello Laurent
I like that you continue to work on jtalk by adding examples to make it more easily accessible to play with.
I evaluated the expression above but it did not start.
Inspecting Tetris new
gives an inspector on aTetris
Inspecting Tetris new appendToJQuery: 'body' asJQuery
opens another inspector on aTetris
Nothing shows up. I am using Firefox 5.0
Do you have any suggestions how to find out where the error is? Hannes
P.S. Would it be possible to have a simple AJAX example which, e.g. which loads a list of key/value pairs (e.g. web colors http://en.wikipedia.org/wiki/Web_colors (X11)) into a Smalltalk dictionary and display them in a dictionary browser? Maybe a variant with a plain text list and a JSON object list.
P.S 2 The canvas is a HTMLcanvas in the sense of Seaside, not a HTML5 graphical canvas to draw on, right? I'd love to have a class Pen with the HTML5 graphical canvas. Even just with a subset of the methods. Then it would be possible to run classical examples from the purple book (e.g. Turtle graphic)
P.S. 3. Tetris is fine but much simpler examples are probably better to help people getting started.
Le samedi 25 juin 2011 à 10:27 +0200, Stéphane Ducasse a écrit :
On Jun 25, 2011, at 8:25 AM, H. Hirzel wrote:
Nicolas
Another idea for an example
Connect the JavaScript InfoVis Toolkit (http://thejit.org/) and display the class hierarchy of JTalk in a view like http://thejit.org/static/v20/Jit/Examples/RGraph/example1.html or one
I would love to see such kind of animation in SMalltalk. I do not understand why this is possible in javascript and not in Smalltalk.
Because such animations are done on the client side. So this is possible in Jtalk :) Cheers, Nico -- Nicolas Petton http://www.nicolas-petton.fr
client side has nothing to do with the problem. We need a better canvas and related. Stef On Jun 25, 2011, at 12:47 PM, Nicolas Petton wrote:
Le samedi 25 juin 2011 à 10:27 +0200, Stéphane Ducasse a écrit :
On Jun 25, 2011, at 8:25 AM, H. Hirzel wrote:
Nicolas
Another idea for an example
Connect the JavaScript InfoVis Toolkit (http://thejit.org/) and display the class hierarchy of JTalk in a view like http://thejit.org/static/v20/Jit/Examples/RGraph/example1.html or one
I would love to see such kind of animation in SMalltalk. I do not understand why this is possible in javascript and not in Smalltalk.
Because such animations are done on the client side. So this is possible in Jtalk :)
Cheers, Nico -- Nicolas Petton http://www.nicolas-petton.fr
Le samedi 25 juin 2011 à 13:55 +0200, Stéphane Ducasse a écrit :
client side has nothing to do with the problem. We need a better canvas and related.
I thought you meant in a web page :) Nicolas
Stef
On Jun 25, 2011, at 12:47 PM, Nicolas Petton wrote:
Le samedi 25 juin 2011 à 10:27 +0200, Stéphane Ducasse a écrit :
On Jun 25, 2011, at 8:25 AM, H. Hirzel wrote:
Nicolas
Another idea for an example
Connect the JavaScript InfoVis Toolkit (http://thejit.org/) and display the class hierarchy of JTalk in a view like http://thejit.org/static/v20/Jit/Examples/RGraph/example1.html or one
I would love to see such kind of animation in SMalltalk. I do not understand why this is possible in javascript and not in Smalltalk.
Because such animations are done on the client side. So this is possible in Jtalk :)
Cheers, Nico -- Nicolas Petton http://www.nicolas-petton.fr
-- Nicolas Petton http://www.nicolas-petton.fr
Hi, On 25 Jun 2011, at 10:27, Stéphane Ducasse wrote:
On Jun 25, 2011, at 8:25 AM, H. Hirzel wrote:
Nicolas
Another idea for an example
Connect the JavaScript InfoVis Toolkit (http://thejit.org/) and display the class hierarchy of JTalk in a view like http://thejit.org/static/v20/Jit/Examples/RGraph/example1.html or one
I would love to see such kind of animation in SMalltalk. I do not understand why this is possible in javascript and not in Smalltalk.
We need a better canvas :). Doru
Stef
of the other examples at http://thejit.org/demos/ Displaying the class hierarchy of JTalk would be one thing. Or in combination with an AJAX example displaying a graph defined in a JSON file.
#Besides porting the InfoVis Toolkit Nicolas Garcia Belmonte ( http://blog.thejit.org/2009/09/30/force-directed-layouts/) develops PhiloGL. It is a WebGL framework for data visualization, creative coding and game development.
--Hannes
On 6/25/11, H. Hirzel <hannes.hirzel@gmail.com> wrote:
On 4/5/11, laurent laffont <laurent.laffont@gmail.com> wrote:
Go to http://jtalk-project.org/
Open development tools -> Workspace
Evaluate:
Tetris new appendToJQuery: 'body' asJQuery
play.
Laurent.
Hello Laurent
I like that you continue to work on jtalk by adding examples to make it more easily accessible to play with.
I evaluated the expression above but it did not start.
Inspecting Tetris new
gives an inspector on aTetris
Inspecting Tetris new appendToJQuery: 'body' asJQuery
opens another inspector on aTetris
Nothing shows up. I am using Firefox 5.0
Do you have any suggestions how to find out where the error is? Hannes
P.S. Would it be possible to have a simple AJAX example which, e.g. which loads a list of key/value pairs (e.g. web colors http://en.wikipedia.org/wiki/Web_colors (X11)) into a Smalltalk dictionary and display them in a dictionary browser? Maybe a variant with a plain text list and a JSON object list.
P.S 2 The canvas is a HTMLcanvas in the sense of Seaside, not a HTML5 graphical canvas to draw on, right? I'd love to have a class Pen with the HTML5 graphical canvas. Even just with a subset of the methods. Then it would be possible to run classical examples from the purple book (e.g. Turtle graphic)
P.S. 3. Tetris is fine but much simpler examples are probably better to help people getting started.
-- www.tudorgirba.com "Don't give to get. Just give."
participants (8)
-
H. Hirzel -
laurent laffont -
Nicolas Petton -
nicolas petton -
Noury Bouraqadi -
Richard Durr -
Stéphane Ducasse -
Tudor Girba