Let's assume for the sake of argument some future time where computer algorithms are 'smart' enough to write their own code within a native source language or framework, then refactor and optimize that code, and basically add to their own programming to meet established goals or targets, which can themselves be modified and/or evolve with metaprogramming.
If this mythical machine existed and wrote code to modify its own programming, without concern at all for human readability or comprehension but instead purely for its own efficient design and function, then what language would it likely use in the most optimal scenario born out of current present day technologies?
- machine language
- assembly language
- Haskell or ML variant
- Dynamic scripting language (Python, etc)
- Low level alternatives to C (D, Rust, Nimrod, etc)
[link] [7 comments]
I know this question may seem somewhat confrontational, but it's actually a thoughtful open letter from someone who really enjoys Haskell programming but whose day job unfortunately has involved lots of C++, Java, and Fortran programming throughout my career ( I work in games industry currently ).
Why is there is so much work on building more perfect languages and abstractions when the industry adoption already lags 25-30 years behind what you fellows are already working with?
I don't want to appear like I'm against progress in languages. I'm all for higher level and better abstractions and heated debates about extensional versus intensional type theory. But Haskell ( and FP on a larger scale ) seems to be of the "obelisk" model of design, seeing how high and far we can go, instead of the "pyramid" style of building out abstractions that can cover a larger area of use-cases.
For instance, there's a lot of bad C++ out there that is a giant imperative mess but covers enough of the industry use-cases, that network-effects tend to negate the use of anything better. I don't see anything replacing C++ for games programming on the order of the next 25 years and that scares me.
At least to me it appears the gap between the average industry programmer and the working Haskell developer is not shrinking but becoming insurmountably large. Even reading through Learn You a Haskell doesn't come close to preparing someone to read through half the libraries on Hackage. There's hundreds of languages extensions, types, and advanced patterns that seem to be ubiquitous but are not explained anywhere for the layman.
So my question to you fine Haskellers is how do you see Haskell getting more industry adoption and what can be done by folks like myself to help get there?submitted by gamedevmike
[link] [112 comments]
For the RapidWeaver users out there, I’ve updated my antique Markup plugin to work with RapidWeaver 5 (slow clap). It also now lives on GitHub, like all the other cool open-source projects published after about 1970. (BitBucket is so 1969.)
As an aside, ohmigosh, there still isn’t anything out there that’s as good as RapidWeaver for building websites. I wanted to redo my site, and looked into a bunch of RapidWeaver alternatives, especially Web apps. Tumblr, Wordpress, Blogger and all that are great for just blogs, but useless for building anything more than a blog. Online site-builders like Squarespace, Weebly, and Virb are either way too dumbed down, too complex, have the most boring themes, or more likely, are all of the above. Despite RapidWeaver still being compiled for ppc and i386 only (it’s not a 64-bit app yet), and using the Objective-C 1.0 runtime (my Markup plugin uses +[NSObject poseAsClass:]!), it is still the best thing going for building sites. Amazing.
Anyway, Markup plugin, go get it.
I've heard the idea of installing shared libraries with cabal and ditching the dependencies. This to me sounds better than cabal sandboxes because it allows you to reuse libraries without needing to reinstall them, and hopefully without needing to redo your entire cabal when you go for an upgrade to your libs. Unfortunately this wouldn't (afaik) improve the amount of time it takes to install these libs.
However if it were possible to install the dependencies as well, compile these shared libraries with the installed dependencies (if the version matches) and then have a new independent library, than I think our package management infrastructure would be solved. If the installed dependency is a version mismatch, we could install this library with a temporary instance of the desired dependency, and then toss jt.
Is this possible ? Do you think this is a good idea/would help?
Also while I'm on the podium might I add that it feels like overkill for cabal to be managing packages, building and sand boxing all on it's own? I think it should at least be split into separate commandssubmitted by fruitbooploops
[link] [33 comments]
I am an avid Haskeller and will be in Santiago, Chile for around 6 months starting August. I was wondering if there are any Chilean Haskell groups or meetups that I can join.submitted by haskman
[link] [4 comments]
At this year's Oregon Programming Language Summer School Stephanie Weirich gave a a series of lectures walking through the development of a simple dependently typed language in Haskell.
The videos are available as .mp4 files at:
and the github repo for the source code is available at:mn-haskell-guy
[link] [10 comments]
If your average coders haskell code outperformed your average coders C code, I don't believe there'd be anything holding us back from popularity. I don't think that's impossible either if we could makes faster data structures default. list and String really don't cut it. I feel that this language should succeed and I think this is an important step along the way.submitted by fruitbooploops
[link] [11 comments]