Live data from Hacker News

Ask HN: Have you created a programming language and why?

news.ycombinator.com

21–30 of 247 posts

Re: Ask HN: Have you created a programming language and why?

#21
I created a non-Turing complete programming language for editing animations, implemented as a GIMP Script-Fu script (Scheme, basically). Here's the documentation: http://tshatrov.github.io/animstack

Why? Because in GIMP it's annoying to edit animations with many layers, so I wanted to write a script that would do what I want. But rather than hardcoding a specific action, I wrote it in an extensible way, and the rest is history.

In general, I think non-Turing complete (always terminating) languages are super useful and should be used more often.

Re: Ask HN: Have you created a programming language and why?

#22
In college I did a project where I created a visual programming language. I thought it would make the program easier to read, but in hindsight it's pretty clear that these systems would be too cumbersome to use except when teaching basic programming concepts.

Professionally, no, but I've taken the approach of "I'm writing a compiler" when ingesting someone else's xml schema.

It's very useful when you need to identify and report errors very early.

Re: Ask HN: Have you created a programming language and why?

#23
post #21

I created a non-Turing complete programming language for editing animations, implemented as a GIMP Script-Fu script (Scheme, basically). Here's the documentation: http://tshatrov.github.io/animstack Why? Because in GIMP it's annoying to edit animations with many layers, so I wanted to write a script that would do what I want. But rather than hardcoding a specific action, I wrote it in an extensible way, and the rest…

Non-Turing complete languages are useful, but it has been my impression that it is difficult to be powerful enough to be useful without being (accidentally!) Turing complete.

Re: Ask HN: Have you created a programming language and why?

#24
I'm currently making a programming language that tries not to be a programming language.

To give some background: I'm working on a program to allow anyone to create video games. But to add custom functionality, my users need to use some kind of programming/scripting language. Since these are non-technical people, it must be as easy and simple as possible.

Therefore I'm now making a language (called Screenplay) where you don't really have to learn anything. You click 'add action' and a wizard guides you through making your action. You select the subject, then the verb (or action), and then some parameters. Translated to OO: you select the object, method and parameters.

I considered using a visual programming paradigm, but still text gives you the most freedom in expression. It's also easier to create new concepts in text than making a new image that makes sense.

In the long run I want my Screenplay language to resemble OO, where users can define their own objects with methods. It kind of looks like this (remember it's game related):

  Hero walks to Professor
  Professor says "Hi there, how are you?"
  if Hero chooses "Fine"
      Professor says "Nice to hear that."
  else if Hero chooses "Not good"
      Professor says "I thought so, let me show you something"
      Professor walks 2 tiles to the left
Methods could be defined as:

  How  says ""
      GUI opens text dialog with "" and image 'face image' of .
I want anyone who can read, but not program, to read such a program and kind of make sense out of it.

Re: Ask HN: Have you created a programming language and why?

#25
Like someone said, every time I write Forth or Lisp :) So I took the next logical step and implemented Forth in Lisp (https://github.com/codr4life/foonline). Why? Because it gives me more leverage, it's like having one more dimension on top of macros. The other reason is that it gives me facts to go with opinions on language design, allows me to see the compromises others made in a new light.

Re: Ask HN: Have you created a programming language and why?

#26
I created a DSL for WebSphere application deployments while working as a contractor for a local company. There were 4 people on the team, and typically each update would take at least a half hour, and was quite error-prone because nothing was automated and each deployment would touch multiple servers.

Fairly simple language, parsed and executed in Perl. I doubt it survived long after I left, sadly.

Re: Ask HN: Have you created a programming language and why?

#27
post #21

I created a non-Turing complete programming language for editing animations, implemented as a GIMP Script-Fu script (Scheme, basically). Here's the documentation: http://tshatrov.github.io/animstack Why? Because in GIMP it's annoying to edit animations with many layers, so I wanted to write a script that would do what I want. But rather than hardcoding a specific action, I wrote it in an extensible way, and the rest…

> In general, I think non-Turing complete (always terminating) languages are super useful and should be used more often.

yup, always-terminating functions are also called total functions (if they're defined for every input). Which is a related concept to Total functional programming

http://docs.idris-lang.org/en/latest/tutorial/theorems.html#...

While Idris is turing complete for example, it's possible to mark functions and whole modules as total, and let the compiler prove it for you. Wish that more people knew that we have such tools available nowadays

Re: Ask HN: Have you created a programming language and why?

#28
I tried writing a lang called Slang where every statement was a search query against an corpus of data and methods that were either imported or generated by the active program. Under a certain threshold of query-match accuracy, it would abort with an exception. I could never make it work and it's probably a bad idea that I should try 5 or 6 more times.

Re: Ask HN: Have you created a programming language and why?

#30
post #17

I created a language that better expresses server side web programming issues (exactly for that reason). https://megous.com/wl I also created language for describing processes (company processes). Mostly for fun and to scratch my own itches.

I'd love to see work on how to visualize processes
Post reply on HN