
Crayon programming language - SenHeng
https://crayonlang.org
======
d--b
> It is most succinctly described as a "Loosely typed Java or C#", "Curly
> brace version of Python", or "JavaScript that's been fixed"

Umph, these are not good selling points.

\- Strong typing is one of the top features of C# and Java.

\- Python is all about math-friendly syntax (ie no curly braces and semi
colons).

\- And claiming to fix javascript is presumptuous.

At best, this makes it sound like a toy version of kotlin.

~~~
clintonc
Man, you sound pretty grumpy about it. I'm pretty sure that the author does
not mean "just like Java but with no types". Python is all about the syntax
(and it's certainly not all about "math-friendly" syntax), though the syntax
was an interesting choice. "Fixing JavaScript" means different things to
different people, but I take it to mean that crayon differs in some aspects
that annoyed the author about JavaScript.

Notice that the author was rather effective at getting us to think about the
features of these languages and how crayon fits in.

~~~
d--b
Sorry, I didn't mean to sound grumpy. I just wanted to say that as a C#,
Python and Javascript developer, I am put off by the arguments put forward in
the landing page.

Saying that is as forgiving as Javascript, as productive as Python and as
robust as C# is a better way to sell the language than saying it is C# minus
typing, Python minus easy syntax and Javascript minus problems...

------
hellofunk
I very highly recommend Crayons. I have been using them since I was maybe 4 or
5 years old, and still find it useful to this day. It is a simple joy.

------
barskern
I'm not really sure I understand what Crayon fixes for Javascript. Based on my
understanding from the intermediate tutorial it seems to be mostly identical
to Javascript, with a game library built in. Can somebody help me understand
what makes this language stand out?

~~~
blakeohare
Hello, I'm actually the creator of Crayon and was surprised to find this
showed up here.

Yes, the syntax very closely resembles JavaScript but there's more traits from
static languages such as Java and less malleability than JS. For example
libraries and dependencies are resolved at compile time and you can make it
print out a tree of dependencies at compile time for use in environments that
need to be properly sandboxed. Also, fields must be explicitly declared. This
allows a lot more things like simple typos to be caught at compile time. The
other thing is that it's export-ready for the platforms it supports. For
example, when exporting to iOS, it generates a full XCode project. While this
is similar to frameworks or languages like Cordova or Haxe, the thing that is
unique to Crayon is the localizability of the language and libraries into non-
English languages. This is still in the prototype phase, but currently works
for Japanese and Spanish:
[https://crayonlang.org/gengo](https://crayonlang.org/gengo)

~~~
barskern
Thank you for the explanatory answer.

Localization seems like a two-edged sword. Wouldn't it cause a spilt in the
community when it comes to tutorials and documentation? Especially if the
community is small.

In Excel I repeatedly faced the problem that the formula "programming"
language was my own language and not English, which meant that all English
Excel formulas I found had to be translated. In my opinion the benefit of
writing my native language does not outweigh the problems of constantly
translating formulas.

What are your thoughts on this problem? Have you thought of any ways to
prevent such problems?

~~~
nonconvergent
That's what contributors are for. OSS has always been dependent on
localization support from contributors, especially for documentation.

~~~
barskern
I understand what you mean, but I don't think you understand my point.

I am not thinking about the official documentation of the language. Normally
translating the explanations in the official documentation only requires
contributers.

However when someone makes a tutorial series or similar, that series will
normally only be limited to one language because they will write the actual
code itself in their language.

I think this would split an already small community.

------
danschumann
I'm kind of upset the squid game doesn't have an on screen counter. I played
for about 15 minutes... pretty sure I got 30+

~~~
blakeohare
I will get right on that!

------
phantom_oracle
No Linux support?

~~~
blakeohare
Alas, it's true. While the platforms Crayon programs can export to can run on
Linux, the compiler itself was originally written in C# back when it was just
a tinker-hobby project and does too many Windows-y things. The OSX support is
based on Mono but is somewhat flakey in certain environments. Eventually I
have plans to migrate the compiler to another language (possibly Crayon
itself).

~~~
randomerr
It looks like you're using Visual Studio 2015. Could you rewrite it into .NET
Core so that it can run on Linux?

I like your idea.

------
lichenwarp
I don't care about the rest of your website if my blood pressure is 5000,
thanks flappy bird clone.

------
ArekDymalski
Interesting project. I'll test it on my 9yo son. Maybe the Squid will convince
him to stop moving commands in Scratch and start typing them instead :)

------
hitekker
What a fun name for a programming language.

------
makach
This is amazing! I like the syntax and the projects vision. Really appreciate
this effort!

------
camgunz
I love basically everything about this project. Nice work, bookmarking :)

------
Simulacra
I was excited but no Linux support.. rats.

