The Most Important Obscure Languages?
Nerval's Lobster writes: If you're a programmer, you're knowledgeable about "big" languages such as Java and C++. But what about those little-known languages you only hear about occasionally? Which ones have an impact on the world that belies their obscurity? Erlang (used in high-performance, parallel systems) springs immediately to mind, as does R, which is relied upon my mathematicians and analysts to crunch all sorts of data. But surely there are a handful of others, used only by a subset of people, that nonetheless inform large and important platforms that lots of people rely upon... without realizing what they owe to a language that few have ever heard of.
Just because a language was built for specialized uses doesn't mean it's obscure. R is very widely known and used. I haven't used Erlang, but I've heard of it, which means it probably isn't too obscure.
If I can be modded down for being a troll, can I be modded up for being an orc, or a balrog?
http://catb.org/esr/intercal/
It speaks for itself...
I might go with a more exotic language, like Haskell or Mercury. D and Scala aren't as big as C++, but they're not conceptually that different. (That's not to say they're not worthwhile, mind.) Languages like Haskell, Mercury, Prolog, Erlang, are rather more alien.
I guess my real point is that most important isn't terribly precise.
Note, despite the acronym, this fictional language works just as well on men as it does on women.
excitingthingstodo.blogspot.com
Assembly. Which is more of a family of languages than a single language, but that's not too uncommon in the PL world.
Very few people actually program in it anymore, but key bits of most OS kernels and programming language runtimes are still written in it.
Brainfuck. Hilarity ensured.
Certainly one of the most elegant languages created, even if it isn't popular.
Visual Basic for Applications seems to be a pretty important language on the dark side of the Force.
I have discovered a truly marvelous proof of killer sig, which this margin is too narrow to contain.
The intermediate languages like GENERIC/GIMPLE.
Who ordered that?
I have come to learn that all languages can be placed in one of those three categories.
If you believe the language you use just HAD to be built because it has some REALLY GREAT features which make it SO MUCH BETTER than the alternatives and are just ESSENTIAL for productive programming in today's HIGH-PACED environment, and its detractors just DON'T UNDERSTAND, you have a hipster language.
If you are doing a fairly specific job with a carefully developed (and often expensive, though sometimes completely Free) tool that has been around for ages and had a language develop with it, perhaps not even because anyone thought a new language was needed but because it was simply thought to be way more of a hassle to bolt libraries onto an existing language, you have a specialist language. Occasionally someone can get as defensive about a specialist language as they get about a hipster language - for example, I am rather partial to Mathematica's pattern-matcher, and sometimes let my enjoyment of it get the better of myself - but these sort of defenses omit a desire to have the WHOLE WORLD use the language.
If the language just evolved over time and well it's far from perfect but it'll do nicely for a lot of things, you have a general-purpose language.
I rather like BF. It's a very compact language with 8 instructions total, so it's usefulness to implement useful software is pretty limited. By pretty limited I mean 0. However, the language itself, being 8 instructions and some implied state, is pretty trivial to implement. It is also Turning complete. So it ends up being a great mechanism to prove another language is Turning complete by implementing a BF interpreter with it. So no one wants to actually use it, there is a small number of people who know about it, and it is very utilitarian in a meta context. Best obscure language.
Most contemporary aircraft have significant amounts of flight-critical software in Ada, some train control systems use Ada, some air traffic control systems use Ada, and of course there's a lot of Ada in US (and other country's) weapon systems. There's the SPARK subset that has been used for provably correct systems (does your software vendor provide a no-bugs warranty?). And there's production-quality code available under Open Source. http://www.adacore.com/ (no connection with AdaCore, other than I have lots of friends who work there.) All of my production code after 1980 was written in Ada. There's substantial anecdotal/unpublished evidence that shows large Ada systems have substantially lower life-cycle/software maintenance costs. Your Mileage May Vary, of course.
Learn COBOL? Job security 100%.
But it is nothing like all the 'modern' languages because it has hardly evolved. As a modern day well educated programmer, you will still need to make a few mind leaps to become a COBOL programmer, and as such it counts as obscure.
However, many banks still handle their transactions on mainframes with COBOL.
Lua
Almost as good.
And here's why.
A few years ago I started using Scala and have even worked at shops where I convinced them to let me use it on larger scale telecom projects. There are things in Scala that can be terse and weird, but it's more than just a clean version of Java. If you learn all the tricks, it's got a lot of syntactic sugar and functional syntax that lend itself to shorter more manageable code. I'm still using it for some pretty big projects like BigSense.io.
Although it's not just Scala, Groovy and Clojure are both languages that try to leverage the existing JVM and the rich base of Java libraries with a newer language.
Java was a big stepping stone during its time. It did a lot of things right, but the backwards comparability and keeping in horrible concepts (checked exceptions, no real properties, interfaces) has kept it from really growing as a language. I think the future of the JVM won't include as much Java.
Because the superstar speaks it.
sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
French.
#DeleteChrome
LISP is probably the most powerful language every discovered. I say "discovered" here and not "created" deliberately. There is a quality about it that makes it feel more like an extension of mathematics rather than a language.
It might have conquered the world if only Eich had been allowed to build Scheme in the browser, as he was hired to do.
Instead, it languishes for some reason I can't really understand. I still wish for a day it becomes a mainstream language but I think it'll just remain a wish.
https://en.wikipedia.org/wiki/MUMPS
This unholy abomination is often tied into your healthcare systems. At the minimum, modern health care software has to be able to speak it to communicate to the old iron still used by hospitals. Often times, you'll still see the software designed in it. The best thing about it is the compactness of the code, which hearkened back to the day when 640kb of memory was all anyone needed. It compressed so much and encouraged such short variable length that mentally unwinding code is extremely difficult, especially when those variables are functionally database queries.
Job Control Language.
You can't handle the truth.
There are no important obscure languages. We shouldn't be hunting around for these tidbit languages that give half assed results. We should be focused on the tech that really brings to the table which is the very garden variety javascript.
It's not to say obscure languages aren't out there, but their usage is often seriously illogical when stacked up against a timeline, getting the job done, and having other people be able to come in and do maintenance or co-create.
Also, these nitty languages aren't universalized and the GUI you can produce with them often cannot hold a candle to simple CSS done well which can flex across multi-dimensional displays easily.
Why is it that just looking at it as a very straight forward simple task is never at the front of peoples minds? It's such a huge thing in terms of actually seeing a project get done instead of everyone ego masturbating over buzz word languages.
Is Pascal used anywhere still? Should I put it back on my resume? Maybe the military uses it in the missile silos with those big ole 8 inch floppies.
"Never give up, for that is just the time and place when the tide will change." -Harriet Beecher Stowe ^_^
What about SNOBOL , APL ,ADA, PL/1 ,LISP , ALGOL etc.
It can be debated if Ada is obscure or not, but it has an important place in computing: Programs made from it can be made provably secure. Very few languages can do this.
Of course, with most dev houses, being able to have a build tree that can compile an executable for packaging on ship date is the most important thing out there, but if someone actually cared to write code where security or life safety is an issue, there is a language, that isn't too unpopular, that can be used for this.
My first exposure to programming was Big Trak, a tank-like toy that you could program to move around the room and perform various functions. A few years later, I would be introduced to Logo at school. I had no difficulty in picking up the language, as I've been using it indirectly for years.
https://en.wikipedia.org/wiki/Big_Trak
Possibly not obscure, but tons of medical software was written in MUMPS
How about WEB then? (and no it is not HTML, Javascript or anything to do with the WWW!) It's the programming language used to write TeX which itself lies behind LaTeX which is widely used by scientists and engineers to typeset papers involving maths as well as for theses, text books etc.
I was forced to learn it and it sounds like someone having something stuck in his/her throat. Does that count?
I depends on what you consider "obscure". If LISP counts, it is probably the most important obscure language ever, just because it influenced the design of nearly every major modern "scripting" language. Particularly those that aren't procedural.
If you mean languages most have probably never heard of, I'd go with CMS-2 It was (and probably still is) used extensively in shipboard systems in the US Navy. It was also the Navy's first crack at a "unified" language. This led to a concerted effort to get rid of the hundreds of single-purpose languages that helped make DoD systems so expensive and difficult to maintain. That led to the development of Ada, its temporary manadate, and to about a 20 year period starting in the 80's where small languages were looked down upon by the CS community.
This has recently been changing, with a profusion of new "Domain-Specific Languages". Give it a new buzzword, and what was old is cool again.
A language used with graph (though we called them 'Network Databases' instead) and NoSQL database engines in the 80's and 90's. CULPRIT is to COBOL as SQL is to Java or C#. Or what ever NoSQL query language you are using is to whatever programming language you are using.
putting the 'B' in LGBTQ+
Looks guys, dice is kicking you to the curb. (I think even slashdot posted that news in a timely fashion) You don't have to run their shitty articles anymore. I'm not saying you need to walk into Shravan Goli's office, drop trou, and leave a nice fat turd on his desk, but at least stop posting this garbage. ok? thanks.
Copyright (c) 1990 - 2014 Dice. All rights reserved. Use of this comment is subject to certain Terms and Conditions.
Elixir is a functional, concurrent, general-purpose programming language that runs on the Erlang virtual machine (BEAM). Elixir builds on top of Erlang to provide distributed, fault-tolerant, soft real-time, non-stop applications but also extends it to support metaprogramming with macros and polymorphism via protocols.
Think of it as a mix of Ruby, Haskell and Erlang without too many compromises.
English. So many programmers fail to understand that there's more to working than being the best damn problem solver you can be. If you're not capable of working with other people, capable of keeping other people up to date on your activities and issues... if you can't give criticism without coming off like a jerk, and you can't accept criticism without overreacting and taking it personally, you are constructing a glass ceiling over yourself. You are forcing yourself into a reputation of "great calculator to be used as a tool when needed" instead of "great person who gets shit done."
There is still a large community using it and supporting it.
The Windows kernel is written entirely in Brainfuck.
ReXX (and variant Kexx) for text; J for maths, Occam for parallel processing.
-- Each tock of the Planck clock is a new world and here we are still life. --
languages of IEC61131-3, running industrial machinery all around the world
For the avoidance of doubt, Go, Dart, Swift and Rust are top tier hipster, and a kitten masturbates god every time someone writes their first Hello World in any of them.
Ruby is so obviously hipster that not even hipsters think it's cool anymore.
Every language developed in the past 15 years which promises AMAZINGLY EASY PARALLEL PROGRAMMING OPPORTUNITIES is hipster. Pro-tip: parallel programming is hard, and an excellent understanding of just what the fuck you're doing is what'll give you efficient, bug-free code - not syntactic sugar.
C and Perl are the quintessential general-purpose languages.
Python is arguably hipster-LISP.
PHP was special-purpose in the days where it was that or cgi-perl, but I'm not sure what the fuck PHP is now. It still feels like BASIC but for web programmers.
Javascript is a great bit of general-purpose quick-and-dirty, but most Javascript libraries make it hipster. jQuery in particular is a great example of how it doesn't matter one fucking bit how incompetent software developers are because Intel makes some really fucking fast CPUs these days. This is really annoying, as the base language is just not-awful enough to be good.
"Important" tends to depend on the industry. For videogame programmers, I'd submit that Lua might be a candidate. While C++ reigns supreme for game engine and client code, and C# has become fairly common for tools programming, Lua has proven to be extremely popular as a plug-in scripting language, as it's free, lightweight, easy to embed in game clients, reasonably powerful for it's small size, and (being written in C) completely portable.
It's famously used by World of Warcraft, of course. At LucasArts, it replaced the SCUMM language in the Monkey Island games (note in the game the SCUMM bar was replaced by the Lua bar). It's also used by many other game developers, both prior and since.
Irony: Agile development has too much intertia to be abandoned now.
and we cant forget NORTH, ay?
putting the 'B' in LGBTQ+
While it isn't considered a full-blown language, awk is pretty useful for a lot of purposes. Best of all, it's included with every *nix flavour.
Trolling is a art,
There would be almost no chip designs without Skill code. It's a proprietary lisp derivative used as the extension language for Cadence's tools.
TCL ... much less obscure ... without which we would not be able to use Mentor's tools to check and verify chip designs.
I use C++ all day, every day. Every time the C++ standardization committee meets, the language gets more obscure to me.
There are also proprietary languages such as OpenEdge ABL (Advanced Business Language)
134340: I am not a number. I am a free planet!
Similar in structure to C. Probably every microprocessor running a browser that displays Slashdot was designed using Verilog.
It's like VB6 except for being awesome and Linux-exclusive. http://gambas.sourceforge.net/... http://gambaswiki.org/wiki
Buy your next Linux PC at eightvirtues.com
digits that really count..... tears innocence truth mercy conscience compassion,, our softer side with extra zingyness.. spirit of creation momkind newclear options no bomb us more mom us hugs not thugs.... see you there.
I remember running into a PICK AT system for a database application server quite a few years ago. Making a back up of the OS was difficult due to the non standard format. Found very little info on it at the time which made life difficult to service the system. It ran on a PC AT in the time of DOS.
Wikipedia on PICK https://en.wikipedia.org/wiki/...
The truth shall set you free!
http://julialang.org
The next "big" language in the waiting/making
After learning Lisp, it's depressing how inelegant other programming languages are.
Most of your junk mail comes mostly from 1 of 3 languages.. .PReS, EZ-Letter, or GMC. While none of them can be used to write their own compiler, I have used at least two of them to describe instructions so complex that I ended up using fuzzy logic routines to reduce the amount of instructions from 10 pages of tangled if then else elseif to about half a page of number crunching insanity. All of them can access outside resources, pull in their own custom made DLLs, and so on.
Keep in mind, each of these languages is designed to run on commercial printers that print at ratings of multiple inches per second.
It's as odd as FORTRAN (which I still use to for consulting). However, it automates my Game of War farms! Check out the documentation!
LISP is the correct answer - it's in almost every printer on the planet, to begin with - by far the most ubiquitous of all, and as obscure as reverse polish is.
Fortran is used for all sorts of science code but I'm not sure if it counts as obscure. It tends to be used by older programmers / engineers so it might become obscure in another 10 years or so when they all retire.
did you not understand?
well versed in the force you are not.
No comparison. VHDL.
Every day you touch dozens or hundreds of things containing chips designed in VHDL, and you've never heard of it. Well, maybe you have, but no one else has.
See that "Preview" button?
As languages further abstract away the underlying hardware, it's helpful to understand how it all works. Especially if you've never had to step into an assembly language debugger. The most likely (and probably relevant) architecture would be x86/x86-64, followed closely by some variation of ARM. IA64 isn't relevant, but if you read up on a little bit of it (there was a series of articles on Raymond Chen's blog a few weeks back), you'll learn about an interesting take on a processor architecture (which offloaded much of the optimization work to the compiler; it was also heavily slanted towards parallel processing unlike x86).
All I know about Bush is I had a good job when Clinton was president.
Specialized Image Processing language.
http://halide-lang.org
Still very bleeding edge, but already under heavy use by Adobe and Google, to name a few.
The aspect-oriented programming language e has been in use for 15+ years to create design verification environments for functionally verifying hardware and systems designs. It is one of the most elegant languages I have used since I started programming in 1973. -- A. Piziali
The chips you are using are created using SystemVerilog or VHDL mostly.
OCAML is used a lot to formally verify the logic in those chips and C code.
OpenSCAD is an excellent physical design language for creating 3D shapes with code rather than poking your mouse at a 3D UI.
I should use this sig to advertise my book ISBN-13 : 978-1501515132.
I've worked on some really odd-ball languages ... the ones that surprised me are: ... I had never heard of it until a few years ago, and it's surprising the businesses that use this one.
CA: Gen - This one is crazy
JCL - This one seems to follow me around a bit. Think DOS, but less automated and for mainframes.
JOVIAL - I almost left this one off the list, but there is a wiki about it, so here you go.
There are some crazier ones out there ... The military seemed to enjoy making new languages with little or no documentation back in the 60s & 70s.
There in no religion higher than truth.
It is probably the best documented language that nobody can master.
It defies definition.
Crucial for a huge amount of software, yet very obscure.
The controls for almost every process control or power generation system in the world are written in Function Block, Relay Ladder, or Sequential Function Chart languages (or the vendor specific equivalent). There is little standardization, though there is the IEC-61131-3 language specification and some fairly widely used tools like Matlab Simulink.
Anyone remember Bliss from the Vax/VMS days?
CORAL66 and JOVIAL are both quite important languages that were used in military applications. I learned Prolog as an undergrad, but not sure how obscure or widely used it is these days.
R is also only one of several even more obscure languages in that domain, including Julia and Stan... is MAPLE still a thing? Less obscure is MATLAB, and Mathematica... (all platforms as well as languages) they've all got their special strengths as usual.
Swift is more popular than R, yet still obscure compared to the top 10 or so. I don't know how ABAP is still alive.
Prolog, Scheme, Groovy, SCALA... there are lots. Even LISP shows up below R in some lists.
SQL is similarly not obscure in its area, but worth learning and you rarely see it in a list of general programming languages (because it isn't). But the commercial vendors all ship their SQL with strong variants that extend the language and do more common language functions like looping. I speak of PL/SQL, TSQL, and their ilk, which all have a touch of obscurity in the same way R does.
I might recommend targeting obscure libraries or platforms also. CUDA isn't a language so much as an architecture; OpenCV is interesting.
If you're looking for jobs, take those, plug them into a job search engine and see what interests you. Languages tend to correlate with industries fairly well. If you want to work on Genomics, you'll see different languages at the top than if you want to work on Wall Street.
Avoid INTERCAL job postings at all costs.
As other have pointed out, R is big time. I work in big hospital system, and our research scientists use the living crap out of it.
But also in the hospital space is mumps, or M, or cache, or whatever we are calling it this decade. It's the foundation for Epic, the leading Electronic Medical Record system. Hundreds of millions of dollars are spent on it, millions of folks medical records are stored in it, it's big time too.. Banks use it too..
Mumps
Its incredible how many *huge* simulation and engineering systems, adminirtative tools, and other things are still powered by a language the mos important datatype of which is a string.
I for my part discovered tcl/tk as a programming language for everyday use only in 2007, and even if my tcl/tk programs were not that elegant (as e.g. the equivalent python program) they were compact and *extremely* stable (within 4 years of round-the clock data acquisition with sessions of months each, i never observed a crash attributable to the core libraries, no memory leaks etc....)
RPG was, and still is in some cases, the backbone of a lot of systems run by big corporations, banks, and government organizations. It's more of a back-office sort of language so it's not highly visible.
Proverbs 21:19
Things in later languages that we owe to Smalltalk:
Closures
Duck typing
MVC
JIT compilation within the VM
The modern IDE
Debugging by inspection
TDD
Hot-swapping running code
I mostly agree... except.
Python is not a hipster language. It is now a general purpose script. It might have started as a hipster language, but everything new has to start that way.
What other language contains the beauty of both RPN style programming and the ability to draw a Bezier curve?
Great language... actually a lot more powerful print language than PDF (yes, I know PDF isn't a language you pedantic insensitive clod!)
Kdb/Q, K, and while at it, J and APL. Cool stuff.
ABAP/4 of SAP is the modern day COBOL, even uglier and backwards.
How about FP and FFP, created by Backus, after realising the imperative mess that his FORTRAN unleashed on the World?
MUMPS - A horrific health-record management specific language inexplicably still in wide use.
JCL and REXX - Used for Mainframe scripting. Few mainframe shops will be without a JCL guru. (JCL is used for non-interactive scripting, REXX is used for the sorts of things you might use Perl for everywhere else.)
JOVIAL - An IAL offshoot that still runs much of the US ATC system until the FAA finally finishes replacing the systems that run it.
The TECO language is fairly obscure but implemented in a fair number of systems.
Now, if the MIT dialect could be ported, it has Q registers that are named, rather than just assigned single
character names, making it a much handier dialect to use.
Historical note: EMACS was originally written in TECO.
'Single-source' compilers?
The only compiler I can find in the open source world is GNAT, which being written in ada without a secondary language bootstrap (C or otherwise) means you have to trust the original GNAT bootstrap binary, rather than being able to ensure trustworthyness by compiling with gcc/clang/pcc/etc to produce 'known clean' compiler binaries.
Does anyone else know of a project working on producing a C/C++ ada compiler, bootstrap or otherwise, that doesn't rely on a self-hosting ada implementation with no way to verify? The original NYU compiler/interpreter was written in C but was only feature complete for ADA83, which no released GNAT version seems to have been written in.
Without them, nothing else matters.
And its descendant is used everyday by everyone who prints out a PostScript/PDF document! :)
Paul B.
http://www.sysmaker.com/infopr...
Oh, wait... you wanted an important obscure language. Sorry. Carry on...
Sit, Ubuntu, sit. Good dog.
Useless obscure languages I've programed in...
ATLAS - Automated Test Language and Stimulation, Looks like basic or Fortran but has only basic looping and variables. If you wanted to do any data processing you dropped into FORTRAN.
VULCAN - The Operating system/shell ATLAS ran on, which ran on an Harris H-100 computer. 128K of memory, 24 bit address buss with a whole board dedicated to the processor made of 7400 logic chips, and the size of your fridge with lots of flashing lights and thumb switches to 'program" stuff like where you'd like it to find the boot loader. 300Meg disk drive was the size of a washing machine, 10 Meg "removable" disk packs where 20" around.
DCL - Deck Command Language - VAX 11 scripting language, nice but clunky for doing any real processing.
JCL - Job control Language, it's not just on punch cards anymore..
CLIPS - Used to build expert systems.. Used by NASA in the Space Shuttle, makes you wonder why software didn't become a problem for the program.
K-Shell - Korn Shell, Heck of a way to run a Unix box..
AWK - Unix data extraction tool, It's just Awkward.
SED - Stream editor, companion to AWK, but really hard to follow.
YACC - Yet another Compiler Compiler, yep, you can make your own compiler with this thing...
RPN - Reverse Polish Notation, Programming using math primitives on a stack, you haven't lived.
Assembly - Yep, I've twiddled the bits directly on the processor, both by dropping into assembly from C and just coding directly in Assembly.
"File to fit, pound to insert, paint to match" - Aircraft Maintenance 101
Eiffel
Red is a complete rewrite and upgrade of REBOL. REBOL? REBOL was rated as THE most expressive general purpose language (by a long shot) according to the famous http://redmonk.com/dberkholz/2.... But, curiously, it got no recognition. Rebol is sort of a the swiss army knife of languages (with networking, graphics, and pretty much you-name-it) All in less than ONE megabyte! No "libraries" -- the libraries are pretty nearly all built in. That seems near impossible in today's bloated world, but it happens to be true. And Red is a major reimplementation and upgrade likely to be released in 1.0 form within months. Actually red is aiming to be the world's first "full stack language" -- for everything from system's programming to DSLs and above. Download version 0.6 and read more here: red-lang.org. If you are intrigued, you can learn more, and assess for yourself the importance of rebol/ red by talking direct to the community and developers here: https://gitter.im/red/red.
jQuery in particular is a great example of how it doesn't matter one fucking bit how incompetent software developers are because Intel makes some really fucking fast CPUs these days.
It might just show that targeting several different runtimes, often with different capabilities, is hard, and that smart developers use a library to abstract the problem away. What you said, is an example of how you are ignorant, and probably a dickhead.
Mention of C# brings back nostalgic memories of maniacal pizza-driven overnighters to finish projects in the latter days of "Windows," an operating system written by Washington-state software developer Microsoft, which you will probably remember for its office applications. It enjoyed a period of popularity ranging into the first decade of our new century and is still in use by some of my rural IT customers.
Vala translates syntax very similar to C# into idiomatic C using GLib for object-based programming (inheritance, encapsulation, events, etc. are all supported). Hundreds of lines of Vala spits out thousands of lines of boilerplate C. You get native code that's nice and fast (reference counting is faster than GC, and you have no intermediary language like .NET/Java since it compiles to C which compiles to native). A couple of programs on popular Linux distros use Vala.
It's a great language for plugin development, too. Unlike languages such as Python, bindings to C/GLib libraries do not require any compiled native code or runtime integration, since Vala has no special runtime outside of GLib.
And, if for some reason Vala's development stalls and you find yourself unable to compile changes made in your Vala code, you can always take your completed project's generated C code and switch over to that being your main source code. It's less maintainable due to the increased amount of boilerplate stuff, but there are plenty of large projects that contain manually hacked idiomatic C/GLib code that's functionally equivalent to what Vala's compiler generates anyway, for all kinds of patterns, like inheritance, signals, properties, etc.
Worst case, it saves you some time instead of having to write all that boilerplate code by hand. Best case, it saves you *A LOT* of time, by being able to write code that reads like C#.NET code, but without the runtime bindings (which constitute both a deployment headache and a source of inefficiency).
It is the basis of much.
Simula 67 was never widely used. But it is the mother of all object oriented languages. And Smalltalk was strongly influenced by it.
R is also only one of several even more obscure languages in that domain, including Julia and Stan... is MAPLE still a thing? Less obscure is MATLAB, and Mathematica... (all platforms as well as languages) they've all got their special strengths as usual.
Don't for SAS Macro Scripting (http://support.sas.com/documentation/onlinedoc/code.samples.html). Extremely influential in numerous science fields and among non-programmers.
There's also VHDL (popular for Engineers, again, typically non-programmers), and whether you like it or not even in the Windows world DOS-Batch is still very much alive though slowly getting converted to PowerShell (derivative of C#).
Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
OP covered your argument in:
If you believe the [library] you use just HAD to be built because it has some REALLY GREAT features which make it SO MUCH BETTER than the alternatives and are just ESSENTIAL for productive programming in today's HIGH-PACED environment, and its detractors just DON'T UNDERSTAND, you have a hipster language.
Everyone knows why a developer might choose to use a library. Everyone understands that it has been historically annoying (not "hard" - just time-consuming) to write cross-platform Javascript. The problem is the popular compulsive belief that jQuery (or, even ickier, jQuery + muddled collection of plug-ins) is the choice - a conviction so strongly felt in your typically irrational case that that those who argue against jQuery are labelled "probably a dickhead". Have you gone through all the alternatives for your particular site? Are you sure you're not just working from half-decade old assumptions about browsers? Are you really reducing the cognitive load and knowledge requirements on those maintaining your code?
jQuery is in the majority of applications premature abstraction, and premature abstraction is why we need GHz CPUs to smoothly implement the same functionality as a late-'80s Amiga.
For those who were ever in the Stellent/Oralce UCM/Oracle Fusion Middleware world, then idoc will either occupy a nostalgic or hated place in one's heart. For such a kludgy scripting language, it is responsible for holding together more Enterprise Content Management Systems than I care to imagine.
PICK uses Data/BASIC as its language (suitably obscure). Nowadays, you run the PICK OS/database in a VM/emulator with a TCP/IP wrapper allowing it to communicate with the outside world. Still widely used in financial and accounting systems. ADP sells PICK based solutions. Very fast, very easy to use, very accurate. I prefer PICK over SQL for many databases
For the most obscure, if not the most important, I would nominate Unlambda. It excels at giving headaches to unwitting users.
There are languages that crawl slowly out of academia, or branch out from specialist applications, or are just the drab product of commercial competition (e.g. C# vs Java). In all truth, we don't NEED more languages, so the point is not that everything new has to start a particular way, but that there are certain things we don't need more of. We don't NEED more natural human languages either, and nobody argues that the world is poorer for lack of new natural language invented every year. Fortunately, human linguists dedicate enough time to examining the richness of existing evolving languages to realise that they'd be embarrassing themselves to think they could do any better...
Now, Python isn't a half bad prototyping tool (hence "arguably") - i.e. it's more than a a masturbatory exercise in carving out territory / adding a notch to one's belt / whatever - but it really is a lot of hipster sugar on LISP. If your brain doesn't register whitespace as meaningful, as in my case, it's very difficult to mentally process - but I do acknowledge that some people find reading LISP just as hard.
It's the defacto standard for games - meeting the requirement of being pretty much everywhere, but at the same time not well known. Most games with a scripting language have selected Lua because it's tiny, fast, simple and effective.
All those moments will be lost in time, like tears in rain.
I recently came across this. Which sums up Erlang pretty well IMO.
Have gnu, will travel.
ASL is the ACPI human language.
Did you know? (according to wikipedia) "...uses of Forth include the Open Firmware boot ROMs used by Apple, IBM, Sun, and OLPC XO-1; and the FICL-based first stage boot controller of the FreeBSD operating system."
I only vaguely remembered reading that somewhere, but I did know that are/were many Forth controlled Telescopes (which led to a better understanding of the cosmos.)
Personally, I used it back in the day to make very compact mission critical 24/7 programs.
PowerShell (derivative of C#).
I wouldn't really call it a derivative of C#, syntactically they're very, very different. They both run on .NET, though, but then so does VB.NET and bunch of other unrelated languages (IronPython comes to mind).
I'd say it's more like various shell languages, though I don't know them well enough to know which it's more like (cshell, BASH, kornshell?)
I always thought "collection-oriented" languages derived from or influenced by APL are interesting, such as the "J" language, "K" language, and the "A+" language. Although, these could perhaps be called "array-oriented" since they are less about stacks, graphs, lists, etc.
A sub-category of collection-orientation is "table oriented", which SQL is part of.
Table-ized A.I.
APL is the strangest language I have ever encountered (college late 70s computer science), nothing like a traditional programming "language". I vaguely remember it being very cryptic and the idea was to write as much code as possible on a single line. One had to understand the parsing of the code, in addition to its cryptic use of symbols not represented in ascii/ebcdic.
If the question was "Which ones had an impact on the world that belies their obscurity?" I would fully agree that SIMULA should be near the top. After all, from what I remember SIMULA was used to validate some of the fundamental ideas driving the mobile phone systems. And as others have pointed out, SIMULA brought us OOP. However, that is all in the past.
As the question was "Which ones have an impact on the world that belies their obscurity?" I would rather go for Forth as it is still used today in important devices and systems that shapes todays society at large. The point of printers has been brought up. I assume it is still used in some of the important telescope systems which was its first reason to be. I will also remind you that Forth was used in the Carrier-IQ system that created quite a stir a few years ago (http://yro.slashdot.org/story/11/12/23/034249/eff-reverse-engineers-carrier-iq).
The fact that they both have had an impact on the whole mobile market just make it more clear to me that they both should be nominated to the top spot together.
How is perl better than python, other than that perl regexes are much easier to use?
To me python is perl replacement where I don't have to put $@% before every variable and that actually has a object system that I understand.
Existed before digital computers. Still going strong - probably used somewhere along the supply chain for every product built in the last 75 years. Keeps the fresh water flowing in and *hit flowing out in the nation's infrastructure.
MATLAB is the name of the platform. The programming language is called m-code.
The little-known (and much frustrating) language that defines the data interchange format for applications as widely-varied as X509 and LTE. Once you truly grok it (which is not intuitive at first) you appreciate the elegance and flexibility (plus zero-copy).
Clearly the most obscure of all but yet the most useful is clearly assembly. Intel assembly is ridiculously obscure and difficult to undertand. We are pretty much all depending on it and runnign binary encoded in it.
Yet we find it so obscure, we use compilers to generate it for us. (And a few actually write it directly when we must.)
SAS should be killed with fire. It is the most frustrating piece of garbage I have ever used. SAS is a garbage language, made by garbage people. And when I say that I don't mean to denigrate sanitation workers, for whom I have the utmost respect. I mean the employees of the SAS corporation are humanoids, perhaps sentient, literally made of garbage.
I wept tears of nerd joy when I convinced my workplace to drop SAS and adopt R.
We don't have a state-run media we have a media-run state.
English.
In all seriousness: it's becoming difficult to communicate with all the acronyms, framework names being used as verbs, and corp-speak trickling into conversation, and this is with folks who are not necessarily expert communicators in the first place.
Anyone who says C++ isn't obscure hasn't tried to decipher a compiler error message that's 3000 characters long, when all it's trying to say is "Dood, missed a const when you used that template".
Anyone use Magik?
could do numeric processing as cleanly as Fortran. There's something wrong with modern computer science trends that newer languages are LESS useful and expressive in some ways. If your new language can't do what Fortran did well, then you're failing to keep up with 1950
Lisp/Scheme for being dynamic, homoiconic (if badly), lambdas, having macros (though the Scheme version of hygienic macros suck - see Clojure for better). Scheme for continuations.
Prolog for backtracking, logic programming, pattern matching, definite clause grammars.
Fortran for being good for numeric processing - for demonstrating why the new fad of non-mutable data structures and recursion instead of loops is bullshit. That new languages can't do what Fortran does shows how stupid it is to throw away what we already know how to do.
having an impact on the world does not belie their obscurity... they're still obscure.
I'm still curious why people knock jquery so badly. I wrote a highly interactive application/wamp client using mostly jquery. The thing just worked on every browser I threw it at. No way that would have happened as easily without jq. I'm not into reinventing fixes to browser quirks.
Laws are rules for the court, but merely a bottom bar to hit for life. Think beyond laws in your actions always.
SATISDICTVMEST
It's a really odd language, but has its niche uses.
There uses it.
aka M :)
Been around for a long time and not many folks admit having used it
It's obscure and horrid to use, but if you've ever used touch panel controls for lighting and such - particularly in lecture theatres and the like - then there is a good chance that the interface glue was written in Netlinx.
Also condensed PERL for a very close second, although some people disagree:
http://articles.mongueurs.net/...
Anybody remember Modula 2 ? Is that obscure enough ?
No, and more to the point it never was. Hipsters do use Python out of irony, though...
sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
Obscure++
Type characters in variable names aside, what about perl 's object system is hard to understand?
Tons of legacy banking hardware still runs on it. Soon I'll be the only one left who knows how to program them, muahaha.
The other day had to use a tool that some smart Alec coded in go. Took half a day to compile that garbage. I understand that it's fun to try to be different, but please don't use obscure languages for something you expect others to use!
Both used a lot in specialized areas; Mumps: Health care, some finance, Ada: military/aerospace.
Both almost unheard of outside those areas.
"Almost every wise saying has an opposite one, no less wise, to balance it." - George Santayana
In the world of integrated circuit design, Cadence SKILL is perhaps the most important language around. Obviously, noone outside of IC designers have heard of it, and yet it's nearly impossible to design any complex IC without writing something in it to make your design process more efficient, whether it be simulation automation, writing pcells or schematic/layout processing.
Because it showed that Programming Languages are possible. Programming in High Level languages was called, at the time, as "Automatic Programming". Just plain programming meant in Machine/Assembly/Macro languages. APL is another important language - helped define IBM 360 architecture formally (before there was Verilog or VHDL). PL/1 is important since quite a bit of Multics (parent of Unix) was written in it.
Ok so it was not my favorite but it was funny to see Microsoft put out a "language" that was suppose to be javaish but compiled to IL. It did so poorly, and i think also got into legal troubles, that it didnt last long
I still program in Forth and Prolog - each for different specialized reasons.
Along with C, C++, Objective C, Perl, FORTRAN and a bunch of others.
No one language fits every task - in spite of what Java programmers like to believe ;-) ;-)
CLI, as in Command Line Interpretter.
The best scripting language ever.
The ultimate string processing language, by the late Ralph Griswald of the Univ. of Arizona:
https://www.cs.arizona.edu/icon/
Python's generators were inspired from Icon.
Mmm, built for supercomputing.
http://julialang.org/
https://www.youtube.com/c/BrendaEM
Or perhaps APT. Maybe V+, VAL, or one of the other languages that are used to run and program so much of the manufacturing that makes your cars, devices, and other consumer crap. G-code is even used in 3D printers, for better buzzword compliance. There's a positively huge volume of it in use, we literally could not make half of what gets manufactured without it, and yet even a techie is unlikely to have ever programmed in it or consciously used it. Not only that, but it's been around without huge changes for a long time, and is pretty close to assembly in how brain numbing it is. It's just a forest of letters and mostly numbers. And don't you dare forget little things like parentheses, or decimal points. Also respect that the machines may randomly decide a maximum line length to use. YAY for random truncation and weird parsing glitches.
Avoid INTERCAL job postings at all costs.
So, you mean the fact that I wrote a c-intercal parser that used obscure opcodes to actually perform the interweave and or and xor isn't a good thing to put on my resume?
Also, my favorite obscure language is LIRL, and that has NOTHING AT ALL TO DO WITH ME BEING THE AUTHOR... rather, it's an interesting concept of, "what if Perl raped LISP and LISP was forced by the republican state government to carry that baby to term?"
The answer is: implied parentheses. To be clear, the language is absolutely context sensitive...
WARNING! This girl exceeds the MAXIMUM SAFE standards established by the FDA for BRATTINESS
Custom languages seem to be common in the financial industry. For instance, I work for a company that has developed their own dataflow language. The language (called ADFL) is used for specifying calculations based on market data and transactions. The underlying data changes as transactions and new prices come in from exchanges and other systems, so the calculations must be real-time. The users view the results in a spreadsheet that updates as needed.
I think this language qualifies as important because we have a large number of clients with deep pockets. Maybe a hundred banks and hedge funds? I honestly don't know the numbers, but in terms of money ADFL is definitely important.
National Instruments LabVIEW - a graphical (but compiled) flow-oriented programming language - is also used for industrial automation/testing. Some of the components within your computer have most probably been tested or handled (before or during soldering/assembly) by a piece of hardware programmed in LabVIEW.
Custom languages seem to be common in the financial industry. For instance, I work for a company that has developed their own dataflow language. The language (called ADFL) is used for specifying calculations based on market data and transactions. The underlying data changes as transactions and new prices come in from exchanges and other systems, so the calculations must be real-time. The users view the results in a spreadsheet that updates as needed.
I think this language qualifies as important because we have a large number of clients with deep pockets who pay a lot of money for this software. Maybe a hundred banks and hedge funds? I honestly don't know the numbers, but in terms of money ADFL is definitely important.
On IBM's MVS and z/OS systems, CLIST was a scripting language for some smaller tasks. In most cases, REXX has replaced this. Often used in combination with ISPF (API for screen interaction and some file activities).
Prolog. Most notable use-case is in IBM Watson.
* Origin: XBase BBS (2:490/4100) Well the good old days may not return and rocks might melt and sea may burn.
https://en.wikipedia.org/wiki/Brainfuck
Your attitude sucks rocks. Your use of the word "hipster" as a pejorative is asinine. It demonstrates that you have the emotional maturity of an eight year old.
To show just how puerile you are, I will demonstrate by substituting "cooties" for "hipster" in part of your post.
Since there are no standards on Slashdot it makes no difference when you post drivel like this. If you were to ever display this kind of behavior in a school or professional environment you would be lucky to last a week.
Get a clue. Grow up. Otherwise you are a waste of space.
Why is Snark Required?
Special purpose language made by NASA for developing expert systems. I don't know how important it is or to what extent they use it nowadays.
Important mostly for embedded systems, and is as obscure as it gets.
(german translation) https://translate.google.com/t...
Avoid INTERCAL job postings at all costs.
According to thedailywtf.com, the same goes for MUMPS.
Virtually every factory and industrial plant in the world is filled with PLCs running software developed in a IEC 61131-3 language - Instruction List, Ladder Logic or Structured Text. None of these languages are pretty - IL looks like assembly code, LL looks like some weird Visio diagram with parameters and ST superficially resembles Pascal, but they're pretty much ubquitous in industry.
When cobol is insufficient mainframe assembly was used. Here there is a httpîto cics bridge written in systemZ assembly. It is chtuluesque
When talking about important obscure languages, make comes to mind almost immediately. It's different enough from imperative programming paradigms that most people never bother to learn or even understand it and yet it's a more or less hidden part of practically every software project that deserves the name.
One of the first language I used on the Atari 800 - 6502 Assembly and then ValFORTH (an implementation of FORTH).
The most important (or widespread) languages that nobody ever hears about are assembly and microcode. They are everywhere and are almost completely invisible. I would suggest that PIC assembly code is probably the one that we could least do without, today.
politicians are like babies' nappies: they should both be changed regularly and for the same reasons
I love the IDEA of LISP. I also slightly prefer Scheme, which to me is a bit more of a pure functional language. But in practice, I find it too much of a pain to use. I'm not accustomed to rethinking things recursively, and I totally get lost in all of the parentheses.
What many people don't realize about Common Lisp is that it's not really a functional language. It's functional-like. But there are side-effects and lots and lots of procedural constructs that seem out of place in a functional language. Consider the loop macro. It can loop over damn here anything efficiently, but it's not functional style. It's a domain-specific procedural language that you stick between parentheses within some Lisp code. Lisp has some features that make it supremely powerful. The code syntax and the data structure syntax are the SAME; that unification multiplies the power of the language in ways that are hard to describe. The macro facility is not equalled in any other language, because the macros are arbitrary Lisp code that is run at compile time that generates arbitrary Lisp code that then gets compiled. Lisp has also been around long enough that it's collected a huge number of libraries for just about anything, and the compilers are smart enough to produce some extremely efficient machine code.
So I really really want to use Lisp. It's just too much of a headache to deal with actually writing the code.
I've learned more languages than I can remember. C, Fortran, various BASICs, Ruby, Bash, C++, Java, JavaScript, HTML, CSS, SQL, Pascal, Ada, and so on. You know what my favorite language is? Verilog. What I enjoy most of all is designing chips. So I totally grok the theoretical value of languages like Lisp and Haskell, but I have the most fun designing circuits. That probably has a major influence on why I don't enjoy programming Lisp.
I work in industrial process control, and we write our control applications for programmable automation controllers, specialized embedded machines with I/O assemblies that can interface with motor starters, drives, all kinds of instrumentation and analyzers, what have you.
90% or more of your modern chemical processing,public infrastructure like water, wastewater and stormwater processing, manufacturing, transportation and safety systems are implemented using this class of controller, and they are not programmed in common, normal programming languages, but specialized control languages.
There is a "standard" set of 5 languages that most PLCs support to one degree or another, ladder-logic, function block diagram, sequential function chart, structured text and instruction list. The first three are very different from what most programmers are used to, the latter two would be more recognizable to the average hacker. For added fun, the languages exist in many different dialects, so although you learn the basics of each language, the specifics differ somewhat between controller manufacturer.
So they are very common in their specific domain, but outside of this industry most programmers may not even know they exist.
Now it's the language that drives more than 80% of the web. There's this thing called "Wordpress", you may have heard of it. The code is shit, to be sure, and it's much more popular than it is good, but it's still a thing. More modern frameworks (Zend Framework 1/2, both of which I've contributed to, Laravel, Symfony, etc) are much better. Maybe it isn't the most well designed or efficient language, but it lets you get shit done, which at the end of the day is the idea. Rapid development is important; hardware is cheap, developers are expensive.
Never underestimate the power of stupid people in large groups.
and Spock and transparent aluminium.
So, you mean the fact that I wrote a c-intercal parser that used obscure opcodes to actually perform the interweave and or and xor isn't a good thing to put on my resume?
Eep, I have offended someone with actual skills! The horror.
Putting it on your resume is one thing... heck, I'd hire someone who had legitimate INTERCAL experience on principle.
Still, I ran a few job searches and couldn't find a match... not a single job looking for INTERCAL experience. What has the world come to? You may get more luck on masochism personals (Ashley Madison anyone?): "gwc, into whips, chains, and being forced to code complex algorithms in INTERCAL". Hmmm.
Off to google LIRL now!
It taught me that I was certainly no game developer...
"The big question in our lives is how to be at the same time a hedonist and in a hurry" - Alain Ducasse (?)
You opinions may or may not be valid. I won't argue about any particular judgement.
"I shall ignore the substance of your post on the relative worth of languages, and the problem in particular of rapid proliferation of languages..."
Your attitude sucks rocks.
"...and instead worry about irrelevant detail such as use of schoolyard insults like `sucks rocks'..."
Your use of the word "hipster" as a pejorative is asinine.
"...err I mean, worry about your use of schoolyard insults like `hipster'. Only an idiot would select a widely used pejorative which carries specific meaning in order to deliver concise, informal criticism."
To show just how puerile you are, I will demonstrate by substituting "cooties" for "hipster" in part of your post.
"To attempt to show without any logic whatever just how puerile you are, I will demonstrate by substituting "fuck" or "fuckity" for every single word in one sentence of your post:
Fuck fuckity-fuck fuck fuck fuckity, fuck fuck fuckity-fuck fuck "fuck" fuckity "FUCK" fuck fuckity-fuck-fuck-fuck.
Since there are no standards on Slashdot it makes no difference when you post drivel like this."
If you were to ever display this kind of behavior in a school or professional environment you would be lucky to last a week.
I've been in software development for coming up to 17 years. Indeed, last month I had an opportunity to use the very sentence, "Please don't bring any of that hipster bullshit into this project." Since a job requires a little more rigour than posting on a messageboard - though you evidently have confused the two - I then spent a few minutes with my colleague explaining why choosing an immature if buzzword-compliant solution which is likely not to be supported in three years' time would be bad, no matter how many articles have been written about it recently. Thank goodness I was spoken to in a similar straight-talking but ultimately helpful way by my PhD supervisor 20 years ago, othewise I'd probably be full of hipster bullshit too.
Get a clue. Grow up. Otherwise you are a waste of space.
Get back to me in a couple of decades when you're less like I was.
Dunno how important it is, but it appears that spec got lost on the other posters too ;)
TECO - a language that is demonstrably Turing complete. Oh, did I mention it is the mother of EMACS?
https://en.wikipedia.org/wiki/TECO_(text_editor)
SQL is similarly not obscure in its area, but worth learning and you rarely see it in a list of general programming languages (because it isn't). But the commercial vendors all ship their SQL with strong variants that extend the language and do more common language functions like looping. I speak of PL/SQL, TSQL, and their ilk, which all have a touch of obscurity in the same way R does.
You mentioned SQL and looping, but you missed out on the 4GL database variants: Aubit 4GL, IBM (Informix 4GL), Progress (OpenEdge Database), Aestiva Software (Aestiva Array). In some domains, 4GL is referred to as ABL. In the version I've used, they support a simple subset of SQL-89, and just enough SQL-92 to support JDBC/ODBC clients - although I've never seen it work. As for the differences, I hear that 4GL databases are record oriented, where SQL databases are set oriented. 4GL has features that SQL lacks, such as looping [FOR EACH table ...], accessing 2 (or more) records from a single table in one query [DEFINE BUFFER x FOR table], max of a field in a particular query [LAST], and conditional access of sub-queries table/buffers with IF AVAILABLE, accessing table children efficiently [EACH childtable OF table] each with independent WHERE syntax, and it is compiled. On the other hand, SQL is very good at aggregating/grouping, handling NULLs with COALESCE, queries not relying so heavily on indexes, and it is NOT compiled. If you want dynamic queries, with 4GL you'll have to build the file and compile it as it runs. One interesting thing about 4GL is their text fields can be overstuffed. Let's say you define your table, CHAR(30), and later you decide you need four more characters. No need to change anything - the extra data will be silently saved. It won't be displayed unless you override your DISPLAY statement, but the data will be there - up to 2k or 4k, implementation specific, as I recall.
Most languages have the ability to create simple character based applications that can be accessed by Wyse and VTstyle terminals. Some environments have the ability to make .NET and Java based graphical applications, also.
Overall though, it's a good idea to have a little 4GL under your belt. I've seen these languages being used in the newspaper industry, web publishing, gas stations, and even banks. I know I've gotten interviews based on just being proficient with 4GL / ABL database languages. It's not a bad thing to know a niche language.
SQL is similarly not obscure in its area, but worth learning and you rarely see it in a list of general programming languages (because it isn't). But the commercial vendors all ship their SQL with strong variants that extend the language and do more common language functions like looping. I speak of PL/SQL, TSQL, and their ilk, which all have a touch of obscurity in the same way R does.
SQL is not in any way obscure and is in fact the exact opposite of obscure. More programmers know SQL than any other language, Java is second.
You keep using that word....I do not think it means what you think it means....
"Those that start by burning books, will end by burning men."
I don't see it here so I vote for the most powerful 'math' language ever built... APL ( https://en.wikipedia.org/wiki/APL_%28programming_language%29 )
Be sure to scroll down and see the code for the Game of Life.
SAS should be killed with fire. It is the most frustrating piece of garbage I have ever used. SAS is a garbage language, made by garbage people. And when I say that I don't mean to denigrate sanitation workers, for whom I have the utmost respect. I mean the employees of the SAS corporation are humanoids, perhaps sentient, literally made of garbage.
I won't necessarily disagree there. I only used it for a couple months back in 2002 and at that because it was something we already had. It was decent; but it certainly had its limitations. The folks on the mailing lists weren't too happy about my embedding 6 or 7 layers of macros...but it worked; the main issue was being able to debug those layers if you needed to.
I wept tears of nerd joy when I convinced my workplace to drop SAS and adopt R.
Certainly agree there. R is far nicer.
Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
There was a time when about 75% of all of the HMOs in America ran their company on an application written in Pick. And then the "traditional" insurance companies were allowed to buy all of the real HMOs and slowly turn them into complicated variants of 80/20 major-medical with a few tacked-on things mandated by state and federal law, and thus were able to throw away the Pick systems that they didn't understand, which ran very well a business model they didn't want to use, despite that model being much more profitable than the model they didn't want to let go of.
There was also a lot of small and mid-scale manufacturers running Pick and an application written in RPL ("Real-time Processing Language), which was a stack-based langauge based on RPN. There were stacks numbered 0-9, and if you needed more, you had to either clear a stack, or pop off all of its contents into a file and then read it back when you needed it. The individual instructions were only somewhat less terse than assembly commands, because the program and interpreter had to load into memory to run, and every bit counted when you only had 125k in your DEC LSI system.
Jesus christ, don't get your panties into a bunch because someone doesn't like your favorite language.
Your use of the word "hipster" as a pejorative is asinine. It demonstrates that you have the emotional maturity of an eight year old.
This is called "ad hominem." Thank you for demonstrating your immaturity level.
For the record, I myself believe the word "hipster" is vastly overused. The AC post is not one of those cases, they specifically mentioned 3 categories of languages.
The relevant issue is: is it accurate? does it apply?
To berate the word, and in your own words:
You opinions may or may not be valid. I won't argue about any particular judgement.
is pure idiotic ad hominem drivel.
Get a clue. Grow up. Otherwise you are a waste of space.
Grow up yourself. Anonymous coward's post has more value than yours. Yours is meaningless drivel.
Here is what anonymous coward's subject title was:
3 categories: general-purpose; specialist; hipster
So, if you are to effectively and PROFESSIONALLY provide a grown-up response, you can argue:
- those 3 categories are cherry-picked to fit preconceived outcomes; they are not good categories
- languages AC named "hipster" actually fit in another category
- "hipster" languages are necessary and beneficial and not all bad; not all languages have to be "pure" and "original" to be useful
That is a useful post, a cohorent argument. Doesn't resort to ad hominem name calling. Actually addresses the issues raised.
Your post is quintessential
http://china-il.wikia.com/wiki/Frank_Smith
100% feminine whining, all hissy fits and no substance. AC had a point and expressed it in a "non-professional" manner. Your post, has no point, except you don't like the word "hipster."
It is just juvenile bitching. Equivalent of "Hitler was a bad dresser, that moustache was HIDEOUS."
There is nothing wrong if you want to be a little girl, go for it. However, let the adults discuss things then. AC is a dick, but you are just impotent.
You provided nothing of substance. AC gets a raise for effort, you simply don't get invited to the next meeting because you add nothing to the discussion.
PowerShell is not like the shell languages. It tries, but fails subtly the moment one tries to use something not .NET based, or anything not specially wrapped into a cmdlet. Pretty much fails the original promise of shell languages, the ability to pipe together programs that don't necessarily know anything about ech others beforehand. I don't like the attitude of everyting's .NET, raw data is irrelevant.
Say, try to manipulate SQL dump with binary data in it in the normal PowerShell way, it gets corrupted due carriage returns helpfully being added in. There are workaround though, just have to be super careful to not use THE PIPELINE for it.
Anyway, that's what bite me recently. Sorry for having to take my eruption, o random stranger.
The main reason you are an idiot is you didn't argue "AC's use of the word hipster is wrong" you just dismissed the whole post because AC used that word.
That makes you PC police. That makes you close-minded and childish. That makes you a moron.
Substitute "hipster" with "new and shiny and overrated" and then maybe you can actually provide a useful rebuttal. Is that really so fucking hard?
Instead, you just whine that because AC used the word "hipster" that invalidates their point. It is not relevant either way. There is an argument there, and you can agree or disagree. Instead, you just ad hominemmed the AC.
Equivalent of "this science paper is wrong, because they used kilometers instead of miles." Not relevant either way.
Either the data is accurate, and the conclusions are accurate, and the math and figures are accurate, or they are not.
In real life, you don't get to just dismiss such a paper as "only children use kilometers" and ignore everything else. That is worse than unprofessional, that is intentional ignorance of the most arrogant and pretentious and pseudo-intellectual kind.
AC can rewrite their post in friendlier language and still have it used "professionally" because there is an actual point there. You, on the other hand, have nothing to stand on, are just grasping at straws.
I don't care if you don't like the word "hipster" that is perfectly fine. You are an idiot because you didn't address anything. If you had actually addressed anything, I could ignore your pathetic outburst and there would actually be some substance in your post to chew on.
IEC 61131 is the automation guys bread and butter, but apart from it, every machine smarter than a induction motor seems speaks it own variant of ugly QBASIC.
Learn to grok those, get good, have a proof of it and there are plenty of jobs.
I mean every guy can do simple "put an input in in these circumstances" like things in them, but dare to use the buggy and feature-depleted networking/gui/string manipulation utilities the programmers put in probably thinking no-one is going to use them anyway, you need some good wits, because the thing is literally a black box, sometimes you load the thing in with FTP or serial and the blinking lights at IO board is all you get to show that the thing is doing what you inted to. No debugger, though there will be bugs - hardware bugs! And bad, insufficient, badly translated documentation, no user community to get help from; maybe a manufacturer hotline which will tell "gee, I dunno" if you are lucky and privileged.
Your post is equivalent of "that lady is a whore because she wore red"
"only whores wear red"
"what a skank!"
Well, if that is your only argument, show us the data then.
Where is your proof that posts that use the word "hipster" are all wrong and inaccurate? How many samples of such posts do you have? How were they gathered?
You don't even dare venture there, because you have no such data.
Instead, we are to believe your claims unquestioningly, a priori, and bow down to your self-proclaimed authority. Nope. Appeal to authority fallacy as well. I for one do not care for your self-elected authority.
Put up or shut up?
Are the languages AC named "new and shiny and overrated" or not? Let's see you make an actual case, instead of just name calling. There, I didn't use the word "hipster" so the almighty princess Required Snark is happy.
I have faith you are not as retarded as you sound, you are just intellectually lazy and can't be bothered with "lesser folks." You are perhaps prejudiced and don't think it is worth your time. That is fine, but you should just say that then.
"I am not going to even respond to your argument because you didn't present it in a professional manner, and I have seen too many such posts that had no substance"
And then the AC can say "you are not paying me, so shut the fuck up with your freeloading whining"
Guess what? If you want a professional environment, treat people like professionals. That includes paying people instead of expecting the universe to bow down to you for free.
Actual professionals don't expect the universe to serve them for free.
How about you show us all the pay stubs of all the times Required Snark paid AC to write "professional" posts?
Instead you appear to be just another free-loading whiner who thinks that the universe owes them everything.
Put up or shut up? Professionals pay people, they don't expect everyone to work for free. They don't invent magical contracts out of nothing and then whine that people broke them, when noone ever has actually seen such a contract let alone agreed to do your bidding from unspecified time A until unspecified time B, for free.
You are just making up bullshit stories Required Snark. You have a talent of not letting reality stop you from writing your fiction. I give you kudos for writing great fiction that you pulled out of your ass.
According to Required Snark, "professionals" only are capable of "no true scotchmen" fallacies.
If you are to be anything but a waste of space Required Snark, you have 2 options here:
-- disprove AC's claims (an ad hominem attack does not do this)
-- make more accurate claims than AC made (which you did not, ad hominem is all you did)
Reasons Required Snark is an idiot:
1) AC's post has a claim. Your post is just (2) ad hominem, (3) appeal to authority (you have not listed your credentials, it is assumed you are a professional because you say so), and (4) no true scotchman fallacy (professionals would never use the word "hipster", therefore AC is not a "professional" and his arguments are dismissed).
4 more reasons why you, Required Snark, are an idiot.
You are not worthy of the name. Actual snark requires more than just logical fallacies. It requires intelligence, and intelligent, if brief and subtle, dismissal of arguments on actual grounds. Not on invented, fallicious, species, arbitrary hubris and arrogance.
You have no snark. Reason number 5 Required Snark is an idiot.
Put up or shut up?
It is not enough to say "AC is an idiot"
You have to say "AC is an idiot BECAUSE xyz"
You have to say "here is my claim" that is true.
It is not enough to say "AC is unprofessional, so I won't even bother"
IF AC's claims are so untrue, you should have no problem disproving them. Apparently AC is right on the money, and all you can do is FUD. Reason number 6 Required Snark is an idiot.
FUD is not enough Required Snark. Oh me oh my, the horrible AC is unprofessional! Better not listen to AC!
Jesus fucking christ Required Snark. That is not an argument. That is not snark. That is not a debate. That is not a reason. That is not science. That is not even religion.
AC was childish turd wrapping around a juicy steak. You take off the childishness, and there is a nice juicy steak inside.
Your post, was just a giant turd wrapping. You take off the turd wrapping around your post, and there is nothing there. All your post was, was a giant turd ad hominem. Nothing inside. No actual substance. No nuggets of wisdom.
AC steak can be fed to a dog, the non-turd-contaminated portions can be isolated and useful. Your post, is all turd. There is nothing to salvage. There is nothing edible. There is nothing of nutritional value. Required Snark's post is 100% turd.
It's not just a language... It's a keyboard, too! But, seriously, it was my second language after Fortran, and I really enjoyed it.
My vote: Pali.
and related Q .. www.kx.com .. a descendent of APL
used pretty heavily in finance, usually by a small group of gnomes working in the basement
Thus the use of "not obscure" in the quoted description. Thank you for your support.
FYI: many of the world's most sophisticated weapons systems use JOVIAL, a language first spec'd in 1958 and required by the US DoD for all acquisitions for decades. This complex (600+ BNF predicates) language is still widely maintained with little or no commercial/community support world wide. Think GPS satellites, multiple fighter jets, SAM silos, etc. used by virtually every military in the world and you'll get it's importance. Obscure? Sure; the last spec was in 1983(?) and still only available printed on dead trees. I win - amirite?
it one of the least obscure.
i meant forth, of course.