Info on Smalltalk DSLs or Metaprogramming...

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
187 messages Options
1 ... 78910
Reply | Threaded
Open this post in threaded view
|

RE: Info on Smalltalk DSLs or Metaprogramming...

Ramon Leon-5
> I'm fine excepting your definition of DSL. However, I still
> think there should be a way to describe the more specific,
> interpreted case. There's a lot of value in looking at the
> interpreted case as a separate technique. And that's hard to
> do if you say DSL and everyone just makes their own assumptions.
>
> -Rich-

What's wrong with simply saying interpreted DSL?


Reply | Threaded
Open this post in threaded view
|

Re: Info on Smalltalk DSLs or Metaprogramming...

Rich Warren

On Sep 7, 2006, at 5:13 AM, Ramon Leon wrote:

>> I'm fine excepting your definition of DSL. However, I still
>> think there should be a way to describe the more specific,
>> interpreted case. There's a lot of value in looking at the
>> interpreted case as a separate technique. And that's hard to
>> do if you say DSL and everyone just makes their own assumptions.
>>
>> -Rich-
>
> What's wrong with simply saying interpreted DSL?
>
>

Nothing, except we pretty much invented the term here. And no one  
else is using it.

It's not really a problem I expect us to solve. I just wanted to  
explore the miscommunication, so I could understand it better.

Reply | Threaded
Open this post in threaded view
|

Re: Re[4]: Neural nets was: Re[2]: Info on Smalltalk DSLs or Metaprogramming...

Rich Warren
In reply to this post by Herbert König
Hey,

I hate to say this, but I may be moving my project to Repast (http://
repast.sourceforge.net/). It's in Java (ARGGG!), but it looks like a  
well-designed agent simulation framework. I don't know if this would  
be something you're interested in or not. It's supposed to have  
various learning algorithms and neural nets and the like already  
built in. Also has built-in graphing and logging capabilities.

It looks like a good way to bootstrap my project (an evolutionary AI/
Alife project), with a minimum of effort. Also, it's been used for a  
number of ALife research projects--which will help make my project  
more acceptable in the eyes of the biologists I eventually need to  
convince.

I'm still doing some of the early prototyping in Squeak, however. If  
I get anything that looks nice, I'll try to post it in a public way  
(don't really know how to do that yet--but I'm sure someone on this  
list can point me to the correct HowTo's).

-Rich-

On Sep 6, 2006, at 11:40 PM, Herbert König wrote:

> Hello Rich,
>
>
>>> This (reinforcement learning) is said to be slow. What number of
>>> inputs and how many neurons would such a brain have? How many  
>>> agents?
>
> RW> Regarding reinforcement learning, I've seen this complaint form  
> other
> RW> EE people, and I never really understood it. Perhaps you could  
> give
> RW> me an example. In my opinion, it really depends.
>
> regarding slowness, I'm an absolute beginner on neural nets and only
> read about how much rounds of training it needs. Currently I'm in the
> stage of: "Is my data representation suitable for processing by a
> (which type of?) neural net?"
>
> Going through: training the net -> evaluate network performance ->
> change data representation or network topology .....
> feels slow in absolute terms.
>
> And a single layer perceptron behind a self organizing feature map
> trains much faster than a multilayer network (only a few of the nodes
> are trained) with comparable results (in my special case).
>
> As soon as I know that a training will yield the "best possible"
> result, I will be cool if a computer needs to run a weekend to train a
> network.
>
> On the other hand, soon after I reach that state, the subject will get
> boring :-))
>
> RW> Not off hand (though I always recommend searching on http://
> RW> citeseer.ist.psu.edu/). If you're just trying to train the  
> weights,
> RW> you can just read the bits into an array and use that as your  
> genome.
> RW> If you want to evolve both the weights and the size/topography,  
> you
> RW> need more sophisticated methods. I know some people have worked on
> RW> different ways to encode neural nets (basically compressing the
> RW> layout/weight information, much the way our DNA compresses all the
> RW> information needed to build a human body).  I can't find the
> RW> reference in my notes right now, however.
>
> Thanks!
>
>
> Herbert                            mailto:[hidden email]
>
>


Reply | Threaded
Open this post in threaded view
|

Re: literate programming examples (Re: Thoughts from an outsider)

Masashi UMEZAWA-2
In reply to this post by Ramon Leon-5
Hi,

The nice thing about duplication is that the duplicated info is
independent of the current code.  The analyzed data can be used for
historical analysis (how the code grows- for example).

>
> That's not abstraction, that's duplication.

--
[:masashi | ^umezawa]

Reply | Threaded
Open this post in threaded view
|

Re[6]: Neural nets was: Re[2]: Info on Smalltalk DSLs or Metaprogramming...

Herbert König
In reply to this post by Rich Warren
Hello Rich,

RW> I hate to say this, but I may be moving my project to Repast (http://
RW> repast.sourceforge.net/). It's in Java (ARGGG!), but it looks like a
RW> well-designed agent simulation framework. I don't know if this would
I'll know after I took a deeper look. They seem to have a lot of
documentation and maybe I can steal an idea or two :-))


Thanks!


Herbert                            mailto:[hidden email]


Reply | Threaded
Open this post in threaded view
|

browsers could be even better (Re: literate programming examples)

Lex Spoon
In reply to this post by Ramon Leon-4
Ramon Leon <[hidden email]> writes:

> > Modulo the quality of the comments in the code that are being used,
> > it's the presentation that can make the difference. A form of
> > browser  that can gather linked comments from methods and classes
> > and present  them in a neatly intelligible form is surely an
> > improvement over  scattered snippets?
>
> Is not the standard Smalltalk browser such a browser?  How would some
> other browser, using the same data, be able to somehow present the
> information better than the Smalltalk browser?  If such a great
> feature existed, wouldn't we simply add it to the existing Smalltalk
> browser?

It is, Ramon.  The Smalltalk browser, specialized to its task, is way
better than a generic web browser.  Furthermore, the Smalltalk browser
is *integrated*, meaning you can flip seamlessly between browsing,
executing, coding, and debugging.  The Squeak debugger can put you
into the Squeak browser, and the Squeak browser can execute things for
you (and IMHO it could profitably do more of that....)

Ruby and Java, having no such browser, must use a generic tool (HTML)
and their integration cannot be as nice.  Smalltalk is way ahead of
its time with its code browsing.


Incidentally, I would not be complacent -- there is always room to add
new or better browsing views to Squeak.  It would be worth looking
through the output from the various FooDoc programs and checking that
Squeak includes analogous views for all of them that matter.

Also, it is well worth looking at the hyper-linking within the
browser.  It would be better if the context menus of Squeak were
actually context-sensitive to what has been highlighted, so that you
can offer good browsing choices.  Instead of "inst var defs" and then
select the variable, it should be possible to highlight the variable
and then "defs of THIS inst var" is on the context menu.

To get ideas about this, just check out Eclipse....


-Lex


Reply | Threaded
Open this post in threaded view
|

Re: why scripting (was: Thoughts from an outsider)

Lex Spoon
In reply to this post by J J-6
"J J" <[hidden email]> writes:
> What *does* the image do with arguments it gets on the command line?
> Would it
> be possible to add a -s switch to give control over to some kind of
> script class
> subsystem?  

For the standard image, see:

  http://minnow.cc.gatech.edu/squeak/425


Keep in mind, though, that you can certainly have a scripting-specific
image, and such an image can do things however you like.


> And I don't think the image would have to be scaled down
> much if at all.
> The image isn't that big right?  And any modern OS will cache it after
> the first use
> anyway.

This is one of the last things I would worry about.  There are loads
of little practical problems with writing scripts, and these are more
important than the startup overhead.

To start with:

  1. How do you access stdout and stdin?
 
  2. What happens if there is a syntax error or
     an uncaught exception?

-Lex


1 ... 78910