Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.programming > #3222 > unrolled thread

Tips on programming language adoption?

Started byRui Maciel <rui.maciel@gmail.com>
First post2013-04-06 10:55 +0100
Last post2013-04-07 17:45 +0000
Articles 10 — 5 participants

Back to article view | Back to comp.programming


Contents

  Tips on programming language adoption? Rui Maciel <rui.maciel@gmail.com> - 2013-04-06 10:55 +0100
    Re: Tips on programming language adoption? Jussi Piitulainen <jpiitula@ling.helsinki.fi> - 2013-04-06 13:51 +0300
      Re: Tips on programming language adoption? Rui Maciel <rui.maciel@gmail.com> - 2013-04-06 13:33 +0100
    Re: Tips on programming language adoption? "Chris Uppal" <chris.uppal@metagnostic.REMOVE-THIS.org> - 2013-04-06 14:01 +0100
    Re: Tips on programming language adoption? Torsten Eichstädt <torsten.eichstaedt@FernUni-Hagen.de> - 2013-04-06 15:11 +0200
      Re: Tips on programming language adoption? Rui Maciel <rui.maciel@gmail.com> - 2013-04-06 14:25 +0100
        Re: Tips on programming language adoption? Torsten Eichstädt <torsten.eichstaedt@FernUni-Hagen.de> - 2013-04-06 18:12 +0200
    Re: Tips on programming language adoption? Tim Harig <usernet@ilthio.net> - 2013-04-07 04:48 +0000
      Re: Tips on programming language adoption? Rui Maciel <rui.maciel@gmail.com> - 2013-04-07 12:35 +0100
        Re: Tips on programming language adoption? Tim Harig <usernet@ilthio.net> - 2013-04-07 17:45 +0000

#3222 — Tips on programming language adoption?

FromRui Maciel <rui.maciel@gmail.com>
Date2013-04-06 10:55 +0100
SubjectTips on programming language adoption?
Message-ID<kjor90$qgp$1@dont-email.me>
I'm looking for a programming language which supports these features:
- Is interpreted/supports REPL
- strong typing
- adequate number crunching efficiency
- good graphics support, including 3D
- preferably FLOSS


Does anyone know of any programming language that fits these criteria?


Thanks in advance,
Rui Maciel

[toc] | [next] | [standalone]


#3223

FromJussi Piitulainen <jpiitula@ling.helsinki.fi>
Date2013-04-06 13:51 +0300
Message-ID<qotli8w0w5z.fsf@ruuvi.it.helsinki.fi>
In reply to#3222
Rui Maciel writes:

> I'm looking for a programming language which supports these
> features:
> - Is interpreted/supports REPL
> - strong typing
> - adequate number crunching efficiency
> - good graphics support, including 3D
> - preferably FLOSS
> 
> Does anyone know of any programming language that fits these
> criteria?

You might be interested in Julia <http://julialang.org>. It comes with
lots of linear algebra and statistics built in. It's functions
dispatch on all argument types. It's evolving at version 0.2 now.
It's free software and open source. I built from sources myself by
cloning from GitHub and running make -k. There are mailing lists for
users, developers, and statistics, archived and browsable on the web,
and there is an issue tracker on GitHub.

I don't know about 3D graphics. I've known about Julia for two weeks,
so these are early impressions on my part. No warranty.

[toc] | [prev] | [next] | [standalone]


#3224

FromRui Maciel <rui.maciel@gmail.com>
Date2013-04-06 13:33 +0100
Message-ID<kjp4iv$fj7$1@dont-email.me>
In reply to#3223
Jussi Piitulainen wrote:

> You might be interested in Julia <http://julialang.org>. It comes with
> lots of linear algebra and statistics built in. It's functions
> dispatch on all argument types. It's evolving at version 0.2 now.
> It's free software and open source. I built from sources myself by
> cloning from GitHub and running make -k. There are mailing lists for
> users, developers, and statistics, archived and browsable on the web,
> and there is an issue tracker on GitHub.
> 
> I don't know about 3D graphics. I've known about Julia for two weeks,
> so these are early impressions on my part. No warranty.

Julia sounds very interesting. Although it appears it doesn't have any 
support for graphics, which would be a major issue for the use I currently 
have in mind, after browsing through the docs section I was left with the 
impression that it does solve a significant number of problems.  It's 
definitely worth looking into.


Thanks for the suggestion, Jussi.
Rui Maciel

[toc] | [prev] | [next] | [standalone]


#3225

From"Chris Uppal" <chris.uppal@metagnostic.REMOVE-THIS.org>
Date2013-04-06 14:01 +0100
Message-ID<X-ednaur_8NQgP3MnZ2dnUVZ7sednZ2d@bt.com>
In reply to#3222
Rui Maciel wrote:
> I'm looking for a programming language which supports these features:
> - Is interpreted/supports REPL
> - strong typing
> - adequate number crunching efficiency
> - good graphics support, including 3D
> - preferably FLOSS
>
>
> Does anyone know of any programming language that fits these criteria?

Nope. Or rather, anyone who does isn't me ;-)

Some near misses:

Mentioning a REPL and strong typing immediately suggests Haskell + OpenGL 
bindings(but you may not want a functional language).

F# (same potential objection, also not very FLOSSy).

Python + the elaborate, widely used, and widely tested 
scientific/graphics/number-crunching libraries (but not statically typed -- not 
sure if that's what you mean by "strongly typed").

Not sure what the current state-of-play with JVM-based languages is -- in 
particular I'm not sure how well 3d is going since Java seems to be getting 
weaker and weaker on the desktop.  But if the 3d stuff /is/ there, then Scala 
should come close.

(You'll notice a bias towards functional programming in the above -- that's not 
because I have a bias in that direction myself -- I'm a Smalltalker -- but 
because you specified strong typing and a REPL and the only candidates I know 
that tick both those boxes are functional or functional-ish).

    -- chris 

[toc] | [prev] | [next] | [standalone]


#3227

FromTorsten Eichstädt <torsten.eichstaedt@FernUni-Hagen.de>
Date2013-04-06 15:11 +0200
Message-ID<kjp6uh$qvd$1@news-ailanthus.fernuni-hagen.de>
In reply to#3222
Well R is specialized on statistics, but might be worth a look.  Then you 
have GNU Octave -- not a programming language, but you can run scripts in 
it.  Many GUI to choose.

http://en.wikipedia.org/wiki/Comparison_of_numerical_analysis_software

Rui Maciel wrote:

> I'm looking for a programming language which supports these features:
> - Is interpreted/supports REPL
> - strong typing
> - adequate number crunching efficiency
> - good graphics support, including 3D
> - preferably FLOSS
> 
> 
> Does anyone know of any programming language that fits these criteria?
> 
> 
> Thanks in advance,
> Rui Maciel
-- 
=|o)

[toc] | [prev] | [next] | [standalone]


#3228

FromRui Maciel <rui.maciel@gmail.com>
Date2013-04-06 14:25 +0100
Message-ID<kjp7kf$1s8$1@dont-email.me>
In reply to#3227
Torsten Eichstädt wrote:

> Well R is specialized on statistics, but might be worth a look.  Then you
> have GNU Octave -- not a programming language, but you can run scripts in
> it.  Many GUI to choose.
> 
> http://en.wikipedia.org/wiki/Comparison_of_numerical_analysis_software

Octave, as well as Matlab, is definitely a programming language.  It even 
supports object-oriented programing.  That's what I'm trying to replace.

Thanks for the list.  I'll be looking into it.


Rui Maciel

[toc] | [prev] | [next] | [standalone]


#3229

FromTorsten Eichstädt <torsten.eichstaedt@FernUni-Hagen.de>
Date2013-04-06 18:12 +0200
Message-ID<kjphhr$kbc$3@news-ailanthus.fernuni-hagen.de>
In reply to#3228
Rui Maciel wrote:

> Torsten Eichstädt wrote:
> 
>> Well R is specialized on statistics, but might be worth a look.  Then you
>> have GNU Octave -- not a programming language, but you can run scripts in
>> it.  Many GUI to choose.
>> 
>> http://en.wikipedia.org/wiki/Comparison_of_numerical_analysis_software
> 
> Octave, as well as Matlab, is definitely a programming language.  It even
> supports object-oriented programing.  That's what I'm trying to replace.
Nice that I was sending you where you came from...

> 
> Thanks for the list.  I'll be looking into it.
> 
Since you're a mathematical trained person I don't have to tell you to take 
Wikipedia articles with a piece of salt
-- 
=|o)

[toc] | [prev] | [next] | [standalone]


#3230

FromTim Harig <usernet@ilthio.net>
Date2013-04-07 04:48 +0000
Message-ID<kjqtq4$d3b$1@speranza.aioe.org>
In reply to#3222
I currently do a large part of my personal programming in Go (golang.org).

On 2013-04-06, Rui Maciel <rui.maciel@gmail.com> wrote:
> - Is interpreted/supports REPL

Go is not interpreted but, because it is designed to be compiled so
quickly, there are several REPL environments available for use.

> - strong typing

Go is strongly typed.  It also supports a very flexible structural typing
model that allows a typesafe form of duck typing.

> - adequate number crunching efficiency

Go code can be made run at close to C code if one is careful about how the
allocate memory.  It supports a wide range of numeric data types including a
library implement for huge integers.

There are some specialized numeric packages available, I cannot speak for
their maturity.  I know that there is currently an initiative on the
mailing list to create something more comprehensive.

One potential drawback of Go for numerical use is that it does not
currently support any kind of operator overloading.  I was involved in a
discussion about how that might potentially be done in the future but, that
support probably will not come for some time.

> - good graphics support, including 3D

It has library connections to SDL and OpenGL.  Go can be connected to any C
library through cgo in the gcgo compiler or more natively using gcc's
capabilities using the gccgo compiler.

> - preferably FLOSS

The go compiler and its standard libraries are licensed under a BSD
like license.

[toc] | [prev] | [next] | [standalone]


#3231

FromRui Maciel <rui.maciel@gmail.com>
Date2013-04-07 12:35 +0100
Message-ID<kjrlgq$34j$1@dont-email.me>
In reply to#3230
Tim Harig wrote:

> I currently do a large part of my personal programming in Go (golang.org).
> 
> On 2013-04-06, Rui Maciel <rui.maciel@gmail.com> wrote:
>> - Is interpreted/supports REPL
> 
> Go is not interpreted but, because it is designed to be compiled so
> quickly, there are several REPL environments available for use.
> 
>> - strong typing
> 
> Go is strongly typed.  It also supports a very flexible structural typing
> model that allows a typesafe form of duck typing.
> 
>> - adequate number crunching efficiency
> 
> Go code can be made run at close to C code if one is careful about how the
> allocate memory.  It supports a wide range of numeric data types including
> a library implement for huge integers.
> 
> There are some specialized numeric packages available, I cannot speak for
> their maturity.  I know that there is currently an initiative on the
> mailing list to create something more comprehensive.
> 
> One potential drawback of Go for numerical use is that it does not
> currently support any kind of operator overloading.  I was involved in a
> discussion about how that might potentially be done in the future but,
> that support probably will not come for some time.
> 
>> - good graphics support, including 3D
> 
> It has library connections to SDL and OpenGL.  Go can be connected to any
> C library through cgo in the gcgo compiler or more natively using gcc's
> capabilities using the gccgo compiler.
> 
>> - preferably FLOSS
> 
> The go compiler and its standard libraries are licensed under a BSD
> like license.

That would be excellent.  Do you happen to know of any working REPL 
implementation?


Rui Maciel

[toc] | [prev] | [next] | [standalone]


#3232

FromTim Harig <usernet@ilthio.net>
Date2013-04-07 17:45 +0000
Message-ID<kjsbc9$cgf$1@speranza.aioe.org>
In reply to#3231
On 2013-04-07, Rui Maciel <rui.maciel@gmail.com> wrote:
> Tim Harig wrote:
>>> - Is interpreted/supports REPL
>> 
>> Go is not interpreted but, because it is designed to be compiled so
>> quickly, there are several REPL environments available for use.
>
> That would be excellent.  Do you happen to know of any working REPL 
> implementation?

I have not used any but, I have seen some mentioned on the gonuts list:

https://github.com/vito/go-repl
http://godoc.org/github.com/emicklei/rango

Here are a comple more from a discussion on stackoverflow:

https://github.com/sbinet/igo
https://github.com/sriram-srinivasan/gore

[toc] | [prev] | [standalone]


Back to top | Article view | comp.programming


csiph-web