Administrator
|
Just a poll of sorts:
1 - If you/we were to start an open source project, what would it be? 2 - What open source project would you like to see happen? -- Owen Owen Densmore http://backspaces.net |
identifying autonomous natural systems in the world by mining the data
sets of change over time for their tell tale dynamics. Phil Henshaw ????.?? ? `?.???? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 680 Ft. Washington Ave NY NY 10040 tel: 212-795-4844 e-mail: pfh at synapse9.com explorations: www.synapse9.com > -----Original Message----- > From: friam-bounces at redfish.com > [mailto:friam-bounces at redfish.com] On Behalf Of Owen Densmore > Sent: Saturday, December 30, 2006 12:39 PM > To: The Friday Morning Applied Complexity Coffee Group > Subject: [FRIAM] Open Source Project? > > > Just a poll of sorts: > > 1 - If you/we were to start an open source project, what > would it be? 2 - What open source project would you like to > see happen? > > -- Owen > > Owen Densmore http://backspaces.net > > > > ============================================================ > FRIAM Applied Complexity Group listserv > Meets Fridays 9a-11:30 at cafe at St. John's College > lectures, archives, unsubscribe, maps at http://www.friam.org > > |
In reply to this post by Owen Densmore
My suggestions:
1 - would be two really, a) science and b) comparative religion education software for the One Laptop per Child (OLPC) 2 - has to be auditable Electoral Voting Machines and Servers - which should be made a legal requirement, IMO. Robert C www.cirrillian.com Owen Densmore wrote: >Just a poll of sorts: > >1 - If you/we were to start an open source project, what would it be? >2 - What open source project would you like to see happen? > > -- Owen > >Owen Densmore http://backspaces.net > > > >============================================================ >FRIAM Applied Complexity Group listserv >Meets Fridays 9a-11:30 at cafe at St. John's College >lectures, archives, unsubscribe, maps at http://www.friam.org > > > > An HTML attachment was scrubbed... URL: /pipermail/friam_redfish.com/attachments/20061230/e528a15b/attachment.html |
In reply to this post by Owen Densmore
Owen Densmore wrote:
> Just a poll of sorts: > > 1 - If you/we were to start an open source project, what would it be? > 2 - What open source project would you like to see happen? > I'd like to see an interactive functional language like Haskell improved to quickly compile and distribute code across a set of compute nodes, and to at the same time support either homogeneous or heterogeneous node architectures while minimizing the cost of using either to the best extent possible. I'd like to be able to checkpoint very large computations with minimal overhead and be confident about the integrity of live jobs migrated between machines as well as jobs that were restarted from hibernation. I'd like maps over sets, tree searches, etc. to all parallelize automatically and adaptively depending on the compute fabric provided. Basically, I'd like features of Chapel or X10 reworked into a purely functional type of language and I'd like it to WORK and not just be an academic exercise. I'd like a language that could support use cases like ABM or Genetic Programming such that evolution of agents and objects was completely natural and very efficient. |
Administrator
|
In reply to this post by Owen Densmore
> 1 - If you/we were to start an open source project, what would it be?
Well, from our side of the world, obviously a killer simulation environment. This would include a "pipe" or "port" interoperability amongst many useful components including the agent modeler, landscape/gis agent environment, visualization, graphing/plotting, analysis and statistics, inference engine, and more. And to cap it off, a visual composition editor letting you hook all this together with drag 'n drop and form based agent behavior. It would be multi-lingual where possible: java for multi-platform and performance, python and other agile languages for scripting. The pipe/port interoperability should have specific goals like being able to run on top of Google Earth, for example. > 2 - What open source project would you like to see happen? EZ Java: a preprocessor/IDE which makes Java less programmer antagonistic .. to remove the "syntactic salt as Steve sez. It would simply preprocess a python/ruby-like front end, but simply be a syntax converter .. not another scripting language for the JVM such as JRuby, Jython, Groovy etc. It would be independent of the particular version of Java .. thus inherit the improvements within Java. But like Processing, it would remove the absurdities of Java. Examples: - First class functions, without the need for a class for "main()" - Less redundant type declarations: String s = new String() is a little noisy. - Simple syntax for Functors .. which make easy on-the-fly "closures". - First class citizens for maps, arrays and strings with very flexible literals. One obvious string improvement, for example, are multi-line strings, strings with substitutions, and most of all, "raw" strings for regex use. This could easily be done with ANTLR, I think. Integrating it into Eclipse and other programming editors and IDEs would be important. -- Owen Owen Densmore http://backspaces.net On Dec 30, 2006, at 10:39 AM, Owen Densmore wrote: > Just a poll of sorts: > > 1 - If you/we were to start an open source project, what would it be? > 2 - What open source project would you like to see happen? > > -- Owen > > Owen Densmore http://backspaces.net > > > > ============================================================ > FRIAM Applied Complexity Group listserv > Meets Fridays 9a-11:30 at cafe at St. John's College > lectures, archives, unsubscribe, maps at http://www.friam.org |
>
> Well, from our side of the world, obviously a killer simulation environment. I recently watched an interview on the Research Channel with Anders Hejisberg, inventor of Turbo Pascal and C#. A former project manager of his at Borland was talking about their abandoned visual programming project, Monet, that Anders was involved in before joining Microsoft. Anders remarked that sometimes "a single line of code is often worth a thousand pictures. You die a slow death of a thousand lines going from here to there." [An example of the "lines" being the object/message connections i.e. MacOS X Interface Builder.] It's all fine and good to try to lower the cost of entry to ABM, but to get science done ABMers need a way to say something precise and have it understood by theorists. Pretty visual programming systems, GIS, etc. don't necessarily accomplish that. |
Administrator
|
> It's all fine and good to try to lower the cost of entry to ABM,
> but to > get science done ABMers need a way to say something precise and > have it > understood by theorists. Pretty visual programming systems, GIS, > etc. > don't necessarily accomplish that. I totally agree, and indeed we've looked into more analytic tools for modeling. Certainly at the surface level, tools that help you know how stable your results are are important (i.e. take the derivative of your model, so to speak). Ditto for good design of experiments aids which give good hints at where your model should be studied most .. where are the "interesting areas". And indeed, many of our models could have a more mathematical component. Hmm..that gets me back to the earlier discussion on the gap between computing and math. But in that sphere, one of the better talks given at the SFI BusNet was of researchers using both modeling and math together, until the math had to "assume a spherical cow" so to speak, and plotting their divergence But the bigger picture of my wish is precisely that: we need to build a far broader set of easily integrated tools for ABM. Far more important is the synergy amongst them than their ease of use. -- Owen Owen Densmore http://backspaces.net On Dec 31, 2006, at 11:29 PM, Marcus G. Daniels wrote: >> >> Well, from our side of the world, obviously a killer simulation >> environment. > I recently watched an interview on the Research Channel with Anders > Hejisberg, inventor of Turbo Pascal and C#. A former project > manager of > his at Borland was talking about their abandoned visual programming > project, Monet, that Anders was involved in before joining Microsoft. > Anders remarked that sometimes "a single line of code is often worth a > thousand pictures. You die a slow death of a thousand lines going > from > here to there." [An example of the "lines" being the object/message > connections i.e. MacOS X Interface Builder.] > > It's all fine and good to try to lower the cost of entry to ABM, > but to > get science done ABMers need a way to say something precise and > have it > understood by theorists. Pretty visual programming systems, GIS, > etc. > don't necessarily accomplish that. > > ============================================================ > FRIAM Applied Complexity Group listserv > Meets Fridays 9a-11:30 at cafe at St. John's College > lectures, archives, unsubscribe, maps at http://www.friam.org |
In reply to this post by Owen Densmore
> 1 - If you/we were to start an open source project, what would it be?
> 2 - What open source project would you like to see happen? I'd like to see simple naive Bayesian classifiers in Ruby for blocking blog spam. I was going to do something like this but got distracted. Rails is only getting bigger, and blog spam is a real problem. There's already an OS blog spamblocker being created, but it's centralized, rather than decentralized, which I have doubts about, even though it seems to make sense. The other point of significant doubt there is that the thing is actually run by a guy who got busted using Google spam in a huge way. -- Giles Bowkett http://www.gilesgoatboy.org http://gilesbowkett.blogspot.com http://gilesgoatboy.blogspot.com |
In reply to this post by Owen Densmore
Owen Densmore wrote:
> But the bigger picture of my wish is precisely that: we need to build > a far broader set of easily integrated tools for ABM. Far more > important is the synergy amongst them than their ease of use. > My experience with Swarm was that it was not easy to do in an incremental fashion or with a typical open source approach. Neither newcomers nor theory people want to concern themselves with the details of the technology, and these are the people measuring your progress in a public/academic funding type scenario. My impression of toolkits that have followed is that there still isn't a great deal of community support at the level of programming. This is not to say projects haven't succeeded, but they've succeeded with focused organizational support, not because of loose community cooperation on improving software. Still you can be sure that GIS-oriented static modelers will want to use their familiar ArcView package, and if they can't they won't get that involved in dynamical modeling. I'm sure we could make a long list of important technologies to support from an ABM toolkit, but it takes a lot of user support to get non-programmers to explore these synergies, even if it really isn't that hard. It's quite possible to work very hard on middleware, and then have a large community of people completely unwilling or unable to get off the ground with it, even with intensive support. (E.g. in Swarm the ability to have the scheduler issue COM calls or call JavaScript functions -- that stuff was effectively middleware and had no immediate payoff except for another programmer to do further development work. The problem is that all development you do on a shoestring budget usually needs to become visible relatively quickly.) In spite of all this, I still think technology integration is one of the most important things. Software packages have to evolve with the times and build on other packages, or else user perception will kill them, if not maintenance burden. Another important thing is to provide leadership in new directions. Scientists are comfortable with this way of doing business and I think it is more fun anyway. One way a small open source project could do this would be to explore a more mathematically tractable language that at once also provided all new capabilities. The two new capabilities I'd like to see are 1) evolvable agent rules, provided at the language level, not in an ad-hoc way, so that agent behaviors could be inferred from observed data (sort like what Phil was talking about), and 2) real scalable parallelism. |
Administrator
|
In reply to this post by Giles Bowkett
> I'd like to see simple naive Bayesian classifiers in Ruby .. <snip>
One issue Redfish deals with quite a bit is use of different languages within projects. We'd like Python to talk to Processing (Java) and Processing to talk to Blender. JDK 1.6 took a tiny step: defining a way for Java to talk to other "scripting" languages. But not the reverse .. how to call Java from other languages like Python. So figuring out a good way to manage using different languages together, synergistically, is pretty important. Two ways to do this are simple file/pipe interfaces, and more sophisticated network/port stunts. The problems comes when you want high interactivity between the different modules: for example agents programed in Python and visualization in Java. .. i.e. "round-trip" interactions rather than serial interactions. So maybe my wish for what we do is to figure out multi-language, multi-toolkit interoperability. Ruby talking to R, Python talking to Java, and so on. -- Owen Owen Densmore http://backspaces.net On Jan 1, 2007, at 12:12 PM, Giles Bowkett wrote: >> 1 - If you/we were to start an open source project, what would it be? >> 2 - What open source project would you like to see happen? > > I'd like to see simple naive Bayesian classifiers in Ruby for blocking > blog spam. I was going to do something like this but got distracted. > Rails is only getting bigger, and blog spam is a real problem. > > There's already an OS blog spamblocker being created, but it's > centralized, rather than decentralized, which I have doubts about, > even though it seems to make sense. The other point of significant > doubt there is that the thing is actually run by a guy who got busted > using Google spam in a huge way. > > -- > Giles Bowkett > http://www.gilesgoatboy.org > http://gilesbowkett.blogspot.com > http://gilesgoatboy.blogspot.com > > ============================================================ > FRIAM Applied Complexity Group listserv > Meets Fridays 9a-11:30 at cafe at St. John's College > lectures, archives, unsubscribe, maps at http://www.friam.org |
Owen Densmore wrote:
> So figuring out a good way to manage using different languages > together, synergistically, is pretty important. > A datapoint: Swarm interfaces are declared using an extended version of Objective C protocols. These interfaces are parsed into Lisp data structures and then dumped in whatever form is needed for a given target language. For example, COM dumps IDL, Java dumps Java interfaces, etc. and each dump compilable stubs as appropriate. The callout and callin mechanisms of Swarm use the native interface to the respective language runtimes as needed to make or accept calls, do object reflection, etc. None of this requires any pipes or network features, it's all can be within single process. By avoiding the need to ever to do direct assignment in the interfaces, its feasible to have a simulation made up of many components in many languages and given a sufficiently fast interconnect (e.g. RPC on Cell processors), it's also possible to span objects and messaging over processor boundaries. Another, arguably better, way to do the same thing is to have compilers for different languages target an intermediate runtime. Like .NET does, or to a somewhat lesser extent the JVM. My favorite example for Java is Kawa (http://www.gnu.org/software/kawa). > JDK 1.6 took a tiny step: defining a way for Java to talk to other > "scripting" languages. But not the reverse .. how to call Java from > other languages like Python. > One way to do this is with IKVM (http://www.ikvm.net) and IronPython for Mono/.NET. (http://www.codeplex.com/Wiki/View.aspx?ProjectName=IronPython). |
Hi,
I ran across this paper today, and while on the face of it it might seem perverse, what it achieves may be relevant. With these approaches, functional programming is possible and concise using XSLT, and as MathML is a XML dialect, there's the possibility of doing search and presentation (and algebra) in a unified way, browser-based or server side. http://www.idealliance.org/papers/extreme/proceedings/xslfo-pdf/2006/Novatchev01/EML2006Novatchev01.pdf Also, I offer this "don't mess with C++" URL, which is kind of amazing. http://www-static.cc.gatech.edu/~yannis/fc++ . |
Free forum by Nabble | Edit this page |