TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Go+: Go designed for data science

199 pointsby angrymouseabout 4 years ago

21 comments

yashapabout 4 years ago
Go is a great language, but it seems terribly suited to data science. The popular data science languages are Python, R, Julia, and to a lesser extent Scala. They’re all extremely flexible languages, where you can easily write high level abstractions&#x2F;DSLs, and they all have very strong functional programming support, because data science tends to be extremely functional. They also tend to be very concise languages.<p>Go is at the complete opposite end of the spectrum - not flexible at all, it’s purposefully difficult and awkward to write high level abstractions&#x2F;DSLs, there’s very poor functional programming support, and it’s very verbose. There are great reasons for these restrictions, they’re intentional design decisions, but they also make it a very poor fit for data science IMO.
评论 #26605663 未加载
评论 #26605483 未加载
评论 #26609091 未加载
评论 #26607850 未加载
joppyabout 4 years ago
The first things I would look for in a data science language are multidimensional arrays, linear algebra packages, data frame and time series libraries ... none of which feature on this page.
评论 #26602856 未加载
评论 #26604966 未加载
评论 #26604656 未加载
评论 #26602989 未加载
评论 #26605199 未加载
carbocationabout 4 years ago
I write a lot of Go, and I spend most of my time doing analysis (usually in R, occasionally in python). I&#x27;m interested to understand whether there was a specific motivating example that drove the creation of this new go-like language.<p>This is Hacker News, so there definitely doesn&#x27;t need to be anything beyond &quot;I could, so I did.&quot; But if this actually solves some problem better than existing solutions, it would be cool to read about. <i>Edit</i>: Without a motivating example, it&#x27;s hard to imagine that people will want to pickup a Go-like (but not exactly Go) language for data science.
评论 #26603509 未加载
评论 #26603827 未加载
评论 #26603805 未加载
MrPowersabout 4 years ago
Go has a ton of potential in the data science space.<p>A basic DataFrame library would go a long way. Doesn&#x27;t have to be as full featured as Pandas. Just something that&#x27;s maintainable and portable.<p>I wrote a blog post a few months ago on the current Go DataFrame libraries (gota, qframe, dataframe-go): <a href="https:&#x2F;&#x2F;mungingdata.com&#x2F;go&#x2F;dataframes-gota-qframe&#x2F;" rel="nofollow">https:&#x2F;&#x2F;mungingdata.com&#x2F;go&#x2F;dataframes-gota-qframe&#x2F;</a>. None of the current offerings are integrated with Arrow.<p>An Arrow-backed Go DataFrame library that can read &#x2F; write Parquet files could really jumpstart data science in Go (really data engineering in Go, which is where they should probably focus first).
评论 #26603408 未加载
评论 #26603430 未加载
评论 #26603391 未加载
评论 #26603127 未加载
评论 #26605010 未加载
评论 #26607888 未加载
评论 #26604300 未加载
kzrdudeabout 4 years ago
The env gop run shebang line is not posix-compliant; posix only requires support for a single argument in the shebang and this one has two arguments (gop run).<p>&lt;&#x2F;irrelevant unix nerd mumbling&gt;
评论 #26603323 未加载
评论 #26605254 未加载
评论 #26603605 未加载
iagovarabout 4 years ago
If anyone is looking for an alternative to R or python, there&#x27;s Julia already.
评论 #26604405 未加载
评论 #26605049 未加载
评论 #26603852 未加载
micro_camabout 4 years ago
I used to do a lot of machine learning code in go and think it has great potential as a compiled, static language with similar ease of development to python.<p>However it is hard to get around the lack of operator overloading and (to a lesser extent at least to me) generics. I love the simplicity of the language and understand their feeling that operator overriding is too often abused but at the same time not being able to use algebraic operators for matrix and tensor libraries makes them really hard to use.<p>The compacting garbage collector can also make it hard to pass pointers to memory to non go libraries which is key in data science.<p>If this project could address those things I think it could have real potential
评论 #26603223 未加载
评论 #26603051 未加载
评论 #26603164 未加载
评论 #26605029 未加载
dunefoxabout 4 years ago
There are quite a few languages I would like to use before Go. Especially F# seems very interesting for DS.
评论 #26605878 未加载
great_reversalabout 4 years ago
Why can&#x27;t you just build libraries to make Go a better language for data science? There&#x27;s already Go support for a Jupyter Notebooks kernel: <a href="https:&#x2F;&#x2F;github.com&#x2F;gopherdata&#x2F;gophernotes" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;gopherdata&#x2F;gophernotes</a>
评论 #26606583 未加载
umviabout 4 years ago
I just barely picked up Go, and my first impression is that it&#x27;s very... opinionated.<p>It wants me to do if&#x2F;else guards a certain way, you have to capitalize first letters of &quot;exported&quot; functions, it won&#x27;t let me import `fmt` unless I use it, etc. I&#x27;m not sure I like it.
评论 #26604439 未加载
评论 #26606533 未加载
ameliusabout 4 years ago
Nobody in data science wants fragmentation. Therefore, any aspiring new platform would need to bring some serious benefits to the table. I&#x27;m not sure what they are here.
unreliableNar8rabout 4 years ago
I wish them all the best in this but it seems like an uphill battle, and doesn&#x27;t seem to have a clear use case to me. For lightweight to medium projects R and Python are so well supported it&#x27;s hard to reject them as the null. If you&#x27;re doing exploratory stuff and want visuals, it&#x27;s the same story with Rmd and Jupyter. For more behind-the-scenes production pipeline stuff there is already Scala which has inroads with Spark. If you really want to use something new, Julia is starting to mature and has all sort of plotting and linear algebra support. To me it seems Go would aim more to compete with Scala I suppose? I suppose then it might come down to plotting.<p>In terms of being a general-purpose DS language, I can&#x27;t imagine using anything that doesn&#x27;t have a clear strategy to A) get a dataset into a DataFrame or similar, B) get my collaborators a plot in a way that is quick and easy, and C) a lesser extent, some kind of notebook&#x2F;reporting tool.<p>They do say there is a lot of development going on but it seems like a space with a lot of great incumbents and a rapidly maturing up-and-comer in Julia.<p>edit: typo
tpmxabout 4 years ago
Seems like there&#x27;s a potential trademark risk if Google decides it wants to protect the Go trademark.<p><a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=20023137" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=20023137</a>
daemonkabout 4 years ago
There are a lot of numerical structures missing from this. Not sure if you can really advertise it as for data science without some kind of dataframe structure.
评论 #26602885 未加载
chartpathabout 4 years ago
Agree with all the comments like &quot;where are the nd arrays?&quot;<p>BUT, they have list comprehensions!! One of the main things I miss coming from Python.
评论 #26603143 未加载
quixoticelixer-about 4 years ago
Oh jesus christ fuck no
Ambixabout 4 years ago
Really cool thing! When it will be ready for production use?
InvOfSmallCabout 4 years ago
What&#x27;s the point?
JediPigabout 4 years ago
not even half baked. its a webpage with a single feature that is broken.
donutloopabout 4 years ago
Many of these features should be part of the upcoming GO 2
dm319about 4 years ago
When I realised I couldn&#x27;t divide a time period by a number or integer, the penny dropped that different languages excel at different things.
评论 #26605353 未加载