CSTN
kesh
Our great sponsors
CSTN | kesh | |
---|---|---|
1 | 11 | |
1 | 19 | |
- | - | |
0.0 | 6.0 | |
almost 8 years ago | 5 months ago | |
Python | JavaScript | |
GNU General Public License v3.0 or later | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
CSTN
-
Why are you building a programming language?
My recommendation is to just write something, even if it sucks. That goes for any concept. You'll learn faster and better by interacting with the machinery yourself versus trying to interpret someone else's abstract understanding of the machinery. In this case, that means choose a simple language or write your own grammar to play with, and make a parser for it. The first real parser I made is a recursive descent parser that parses a relative of JSON. If you're curious, my code is available), but I was a lesser programmer when I wrote it, so don't take it as an example of how you must do things. Regardless, it does work. I've continued to use the character stream code in every text parser I've written since, with some improvements.
kesh
- Have any of you designed a conlang, and then designed a programming language based on the conlang or any fictional culture that would use it?
-
Too many words about Rust's function syntax
I have something similar in kesh, where : is the assignment operator and the type/signature may be "assigned" before the value:
-
Temporal Programming, a new name for an old paradigm
I'm not OP, in case you thought that :) kesh lives here. I tried incorporating some of the ideas discussed here, but posponed it to a later language, which I'm still thinking about.
-
What language features do you "Consider Harmful" and why?
This is a great idea that I've adopted for my PL. I took it a step further and also allow extensions of the core language to be specified, including profiles.
-
Let's talk about interesting language features.
My (non-existing) language kesh, designed to compile to TypeScript, has expression blocks. That was one of my first decisions.
-
October 2021 monthly "What are you working on?" thread
Still no work on a compiler, but more work on the documentation of kesh.
-
What are some simple but powerful compile-to-JS languages I might not know about, or that you are working on (not Elm, Reason, PureScript, or ClojureScript)?
I'm working on kesh, but it's only at the design stage. I have tried to make it simple yet powerful, so I thought I'd mention it even though you can't use it.
-
Why are you building a programming language?
I tried to distill down the most essential features of TS/JS (functional, prototypal) and then come up with new syntax and semantics that was minimal, orthogonal and hopefully easy to learn and use. The result is kesh and na.
-
September 2021 monthly "What are you working on?" thread
I like the way you think. I had the same goal with kesh. A minimal syntax is easier on the eye and lets you focus on the actual code.
-
August 2021 monthly "What are you working on?" thread
I'm only at the drawing board stage of kesh, a simple little PL that one day might possibly transpile to TypeScript. Not a single line of compiler code has been written so far, it's still all about syntax design and exploring ideas. kesh is mostly a pastime activity and something I can ponder over when I'm bored or can't sleep (which may be the reason I can't sleep).
What are some alternatives?
gaiman - Gaiman: Text based game engine and programming language
ric-script - A modern scripting language; implemented in old school C, yacc & flex
design - WebAssembly Design Documents
cubiml-demo - A simple ML-like programming language with subtyping and full type inference.
ngs - Next Generation Shell (NGS)
ghc-proposals - Proposed compiler and language changes for GHC and GHC/Haskell
na - a minimal data notation format
TypeScript - TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
durin - the Dependent Unboxed higher-oRder Intermediate Notation
tauri - Build smaller, faster, and more secure desktop applications with a web frontend.
bluebird - A work-in-progess programming language modeled after Ada and C++