Somewhat like assembly meets c99 /javascript with maybe an extended preprocessor macro system (#declr? ) pointers rarely contain a single value, they either reference an array, or a group of values. In the case of the latter, the pointerVarName.FieldName pair specifies to get the value, and then any manipulation of pointerVarName is always updating the pointer... so there isn't really a need to have two operators to do that....
I'm not neutral; I have VESL on my mind. VESL is like blockly/scratch/snap/... except also able to create objects (structures with elements). I've recently come to re-learn javascript from a 2017 perspective, and have come to learn that really the type of data in a variable is always determined by the value that's put into the variable. Have it be any other type than that type would catch developer errors; but with proper habits I don't have the tendency to put a integer value in a field that should be holding a string. Even before learning JS I knew JSON for websocket communication. JSON defines 3 types ( okay there's actually like 7 but...). { "stringValue": "String", "numValue" : 1234, "object" : { .... }, "realNumValue" : 1234.0e-3, "nothing" : null "yesNo" : true/false (keywords) } For specific microoptimizaitons of space (like you need a whole bunch of values that are only 0-255, specifying a byte type can be useful). int(float), void*, bool. and struct userTypes *, and [] are the only types I've been using for the last 15 years developing in C. That and decoding network protocols made up of bytes, shorts, etc, type information can be useful. Javascript (since ES5/6) has had TypedArray, which gives you optimal uint8Array so you can have a string of packed bytes in memory, and the JIT gets to generate fast code to access it without boxing it into integer types always; This is required for things like Three.jS (Really WebGL ) to work... sending vertex information from javascript in packed float arrays to C++ Code to openGL driver eventually... Not that everything can entirely be done in JS. I have a C++ addon that provides many system abstractions that Node doesn't; but making an API for javascript to utilize is almost eaiser than making an API for C/C++ to use, because in JS you can just make one of the objects, and dump it to see what fields/methods it has (right then and there). so with JSON I get named variables and values, so I don't need 'var', and there are no parenthesis in JSON (outside of quotes). So there are no functions/expressions..... so simply saying { myFunction : (args... ) { ... } } means I don't need the function keyword, and the definition of a function is always a name (paren) (args) (closeparen) followed by a code block. If there is no code block after it (it's a close statemtn like , or ; ... or it's an operator, then it is a call, and the arguments are expressions instead of name definitions for the function code block. What I lose then... is without var or function, I can't really use let or const. https://github.com/d3x0r/VESL/blob/master/vesl.md But then, as a VPL (visual programming language) I really want to use text as little as possible. Typing in names to create lables for blocks then allows me to have a visual representaiton of that for later use, so I only need to type each name for each class once.... and then I don't have to represent 'function' 'profcedure' 'this returns a value' 'this doesn't' ... On Mon, Mar 19, 2018 at 8:36 PM, wce teky <thedo...@gmail.com> wrote: > hi! > > i'm the dotre, and i am designing a programming language, > you may be interested at, it is general purpose, structured, > imperative, data-driven and autonomous; i have already its > syntax and very brief introduction as documentation. it is > documented with google docs, but it can be downloaded > with a browser as plain text. > > see you! > > https://drive.google.com/drive/folders/1jf_iP9F_Iz_dGSYUzx9Xz-Od24qkchMH >