Swift is an amazingly powerful framework. The syntax for its scripting language takes some getting use to. If you think that's bad, try reading the Java that's underlying it.
Could anyone who's got knowledge of the environment explain why a new language was required - what couldn't have been done as a library for an existing language?
If you're interested in a Python implementation of some of the core ideas of Swift (task-based parallelism, DAG representation of work-flow, etc..) look here: https://github.com/timarmstrong/pydflow
A new language isn't required. For part of my dissertation, I wrote a DSL on top of Python called Weaver (http://bitbucket.org/pbui/weaver) that compiles workflow DAGs that are executed by Makeflow (http://cse.nd.edu/~ccl/software/makeflow) on a variety of distributed systems (e.g. Condor, SGE, WorkQueue, multi-core).
A friend of mine is finishing up his compilers class and keeps randomly wanting to write new languages because he can. It would not surprise me to learn a similar effect is ...in ..effect... goddammit my diction sucks today.
Getting upset over curly braces doesn't help anyone. We have so many languages that follow Algol's example because they work. It's a metaphor that works for us.
Comments
I started seizing a bit when I looked at the example code.
I'm sure it's awesome, but friggin come on. There's more to life than algol 2.0.
Swift is an amazingly powerful framework. The syntax for its scripting language takes some getting use to. If you think that's bad, try reading the Java that's underlying it.
Could anyone who's got knowledge of the environment explain why a new language was required - what couldn't have been done as a library for an existing language?
If you're interested in a Python implementation of some of the core ideas of Swift (task-based parallelism, DAG representation of work-flow, etc..) look here: https://github.com/timarmstrong/pydflow
A discussion of the Swift language can be found here: http://www.ci.uchicago.edu/swift/papers/SwiftLanguageForDist...
A new language isn't required. For part of my dissertation, I wrote a DSL on top of Python called Weaver (http://bitbucket.org/pbui/weaver) that compiles workflow DAGs that are executed by Makeflow (http://cse.nd.edu/~ccl/software/makeflow) on a variety of distributed systems (e.g. Condor, SGE, WorkQueue, multi-core).
GC3Pie is a Python library for running many-task workflows (not just DAGs): http://gc3pie.googlecode.com/
Currently, it is mainly targeted at grid/cluster computing but it's evolving.
(Disclaimer: developer here.)
A friend of mine is finishing up his compilers class and keeps randomly wanting to write new languages because he can. It would not surprise me to learn a similar effect is ...in ..effect... goddammit my diction sucks today.
Getting upset over curly braces doesn't help anyone. We have so many languages that follow Algol's example because they work. It's a metaphor that works for us.