Groups 111 of 99+ julia-users › Julia vs SeedSeven, why languages succeed or fail 4 posts by 3 authors Páll Haraldsson Oct 5 A. I just re? discovered SeedSeven language, one of the few languages with multiple dispatch, also extensible not though macros . https: groups.google.com forum !topic comp.programming _C08U8t4dRg SeedSeven has more then 90 libraries now. in 2013, after 7 years They hit Top100 93? top on TIOBE, but nowhere to be found now. They seem very similar, except for Pascal like syntax, I guess there must be more to it.. B. Chapel can be faster than Golang or competitive, but also much slower is a parallel language, not sure if not working meant to work always.. : http: benchmarksgame.alioth.debian.org u64q chapel.html fasta source secs KB gz cpu cpu load Chapel 20.59 28,868 1216 20.59 100 0 0 1 Golang 1.97 Chris Rackauckas Oct 5 Who's the audience for SeedSeven? I googled SeedSeven BLAS, SeedSeven Linpack, SeedSeven FFT and nothing came up. So a large portion of Julia users are not the SeedSeven audience. To me, there is almost no similarity between Julia and SeedSeven, even if the syntax or features were similar. But for the reasons you say, the SeedSeven audience would be part of the Julia audience. Chapel was made for a small niche: most people still aren't dedicating all of their time to parallel programming. That's fine, but it's clear why it isn't seen everywhere. One thing to notice too is that one of Julia's strength is that it allows itself to build off of other's strengths. It doesn't reinvent the wheel, it reinvents the language design and structure. It very naturally plugs into LLVM, FFTW, OpenBLAS, etc. so that way it's fully featured and fully performant, but without having to re-create every little detail. This plus the fact that Julia's Base is mostly written in Julia means that the basics are covered, and Julia can be worked on by standard Julia users. This makes Julia easy to maintain, easy to upgrade, and easy to see a future for. Lastly, why do some languages succeed? Because you have to use them. Julia offers me many things that no other language does, so even though my research adviser didn't want me trying a new language , I can't make him happy: switching from Julia would only lead to major performance feature syntax maintainability problems been there, done that . So no matter what, I am going to continue to use Julia. I believe others are the same. And that's why it's succeeding. Tamas Papp Oct 6 A necessary ingredient for success is that a language is created by people who have specific and clear ideas about what they want from a new language 1 , _and_ have the expertise to implement them. Everyone wants a fast, extensible, conscise, safe etc language insert favorite features here , but very few people have the expertise to create one that improves on existing languages. 1 http: julialang.org blog 2012 02 why-we-created-julia Also, this is hard to accept, but languages succeed and fail partly for random or trivial reasons. Timing also matters: a language may fail because the existing technology is not yet ready for it think of implementing Julia before LLVM , or succeed because they are the first language to scratch a particular itch, or fail because the niche they want to occupy is filled, etc. It is always tempting to rationalize the outcome ex post with a technical explanation speed, syntax choices, features, etc , but I doubt that languages succeed and fail purely on their technical merits. Julia seems to be filling a vacuum in the scientific community. It is fast Fortran Clanguage , yet interactive user-friendly Rlang Matlab Octave , and is available for free which not only saves the cost of a license, but also the overhead of negotiating upgrading keeping track of them, and the pain of discovering that your code won't run on your coauthor's machine unless you get buy another license etc . I don't know SeedSeven, but I wonder why you consider it a relevant benchmark for comparison. On Wed, Oct 05 2016, Páll Haraldsson wrote: A. I just re? discovered SeedSeven language, one of the few languages with multiple dispatch, also extensible not though macros . https: groups.google.com forum !topic comp.programming _C08U8t4dRg SeedSeven has more then 90 libraries now. in 2013, after 7 years They hit Top100 93? top on TIOBE, but nowhere to be found now. They seem very similar, except for Pascal like syntax, I guess there must be more to it.. B. Chapel can be faster than Golang or competitive, but also much slower is a parallel language, not sure if not working meant to work always.. : http: benchmarksgame.alioth.debian.org u64q chapel.html fasta http: benchmarksgame.alioth.debian.org u64q performance.php?test fasta source secs KB gz cpu cpu load Chapel http: benchmarksgame.alioth.debian.org u64q program.php?test fasta&lang chapel&id 1 20.59 28,868 1216 20.59 100 0 0 1 Golang http: benchmarksgame.alioth.debian.org u64q program.php?test fasta&lang go&id 3 1.97 Páll Haraldsson Oct 6 You both have excellent responses, I'm just commenting on those in case people find interesting and or want to compare and contract with SeedSeven or other languages. Can anyone look at Julia and SeedSeven at: https: en.wikipedia.org wiki Comparison_of_programming_languages confirm info is correct, add or correct if something is missing or propose here or at Wikipedia's Talk-page , if you think conflict-of-interest applies; shouldn't apply for clear cut-correct info . In case people like to compare SeedSeven to Julia or Java : http: seed7.sourceforge.net faq.htm java_comparison All parameters are call-by-value Arrays are present in many programming languages, but they are usually hard-coded into the compiler interpreter. SeedSeven does not follow this direction. Instead it introduces abstract data types as common concept behind arrays, structs, hashes and other types. I knew Dylan was slow and failed despite multiple dispatch and Common Lisp, only other MD language I was familiar with, is well Lisp, with list, not arrays as main data structure, not modern fast good enough for at least Julia's audience, for not just that reason. On Thursday, October 6, 2016 at 6:57:26 AM UTC, Tamas Papp wrote: Also, this is hard to accept, but languages succeed and fail partly for random or trivial reasons. Very true.. Timing also matters: a language may fail because the existing technology is not yet ready for it think of implementing Julia before LLVM , or succeed because they are the first language to scratch a particular itch, What I was thinking of with SeedSeven, there are so many similarities Julia seemed redundant with it, but I also see differences when looking more closely , maybe it was ahead of the times; maybe the speed wasn't up to par, needed LLVM ? , while nothing wrong with the language's syntax. Julia, succeeds not just because of the syntax, also in large part because of the implementation e.g. LLVM . I recalled having seen SeedSeven was fast can compile to Clanguage.. , I may misremember confuse with another language e.g. Nim rod . Benchmarks for seed7 are really difficult to google for.. Julia seems to be filling a vacuum in the scientific community. It is fast Fortran Clanguage , yet interactive user-friendly Rlang Matlab Octave , and Hopefully not just there.. About Who's the audience for SeedSeven? I googled SeedSeven BLAS .. Maybe that's its flaw, at least Julia's FFI and included libraries are one of its killer features, while I'm not looking for BLAS etc. Maybe that was it, not clear goals targeting say scientific or good enough marketing , that really needed a new language? One thing I forgot to check, REPL in SeedSeven: Unclear about a REPL interpreter must be the same for them? with SeedSeven allows the interpretation and compilation of programs with any license. There is no restriction on the license of your SeedSeven programs. and I only saw this using the REPL term: Command line utilities. E.g.: A calculator that works like a read-eval-print loop REPL I guess REPL dynamic is now almost required for any new language to succeed I see a REPL is coming to Java 9, not only Beanshell . This wasn't thought possible in a fast language previously, Julia proved wrong, now one of the key selling points solving the two language problem . is available for free which not only saves the cost of a license, but Some languages fail for cost or non-Windows support or only MinGW , or maybe unfairly? because GPL, none of which seemed to apply LGPL to SeedSeven: Windows is supported with several compilers: MinGW GCC the binary Windows release of SeedSeven uses MinGW Cygwin GCC the X11 graphics needs Cygwin X MSVC cl.exe cl.exe is the stand-alone compiler of MSVC BDS bcc32.exe bcc32.exe is the stand-alone compiler of the BDS SeedSeven allows the interpretation and compilation of programs with any license. There is no restriction on the license of your SeedSeven programs. http: blog.fourthbit.com 2014 03 01 the-best-programming-language-or-how-to-stop-worrying-and-love-the-code -- Palli.