Hello
Re: Hello
With NASM installed on Windows, it shouldn't be difficult to port. But the library must support Windows system calls too. This is not difficult and will be implemented along with compiler directives once the basic compiler is complete and functional. This will likely take a few more months as floating point numbers and arrays have not been implemented yet.
Keep it simple!
Re: Hello
Of course i understand
i build few toy interpreters and never compiler ,assembly ..ouhhh i don't get it
it is not easy work , even i am working (from time to time ) on my small interpreter
i still not have arrays ..hmm i am in doubt how to add them ,i know ways but i am not sure what
would be better ..so keep on
i build few toy interpreters and never compiler ,assembly ..ouhhh i don't get it
it is not easy work , even i am working (from time to time ) on my small interpreter
i still not have arrays ..hmm i am in doubt how to add them ,i know ways but i am not sure what
would be better ..so keep on
Re: Hello
The advantage of learning ASM is that concepts such as arrays become easier to understand and implement. Same goes for structs/types.aurel wrote: ↑Tue Nov 23, 2021 4:02 pm Of course i understand
i build few toy interpreters and never compiler ,assembly ..ouhhh i don't get it
it is not easy work , even i am working (from time to time ) on my small interpreter
i still not have arrays ..hmm i am in doubt how to add them ,i know ways but i am not sure what
would be better ..so keep on
Keep it simple!
Re: Hello
yeah ..but i really don't have a time to learn assembler
it is too hard to me or i am lazy ..i understand very well concepts but again i am too lazy to type all
that code even in BASIC compiler which i use Oxygen Basic ..by the way it is written in Freebasic
ahh i will see..
it is too hard to me or i am lazy ..i understand very well concepts but again i am too lazy to type all
that code even in BASIC compiler which i use Oxygen Basic ..by the way it is written in Freebasic
ahh i will see..
Re: Hello
before current interpreter microA i made one called ruben
that one have arrays and worked well but little bit slow ..i know why
i interpreter such is my i avoid variable lookup routine using separate array to hold var ID
so same method i will try to use in current ...
for compiler things are very different ...
that one have arrays and worked well but little bit slow ..i know why
i interpreter such is my i avoid variable lookup routine using separate array to hold var ID
so same method i will try to use in current ...
for compiler things are very different ...
Re: Hello
While developing the expression parser last year I realized why 'mature' languages such as Pascal and C use different operators for assignment and comparison. Key is boolean expression evaluation. With statements such as:
Code: Select all
a = b
if a = b ...
Code: Select all
a = b = c?
Code: Select all
a = b == c
Code: Select all
a = b = c
A programming language that knows little to no ambiguous situations can be more powerful with more features and is easier to use and develop.
Keep it simple!
Re: Hello
My point is that average BASIC programmer don't like ==
and who use this constructs
like
a=b=c ...no one !
from the boolean expression it is perfectly same
i have as many other Basics just
if a = b : print a : end if ../ or endif
not
if a ==b : print a : end
but of course you work your way
i have for example
func name()
...
...
endFn
'events...
WinMsg wmKEYDOWN
hWparam wp
endWM
and who use this constructs
like
a=b=c ...no one !
from the boolean expression it is perfectly same
i have as many other Basics just
if a = b : print a : end if ../ or endif
not
if a ==b : print a : end
but of course you work your way
i have for example
func name()
...
...
endFn
'events...
WinMsg wmKEYDOWN
hWparam wp
endWM
Re: Hello
I beg to differ. Expressions expecting a boolean result are plenty:
Code: Select all
dim test: bool;
dim b, c: int = 10;
test = b = c; ' perfectly legal test, but ambiguous with a single operator for assignment and comparison
test = b == c; ' perfectly clear what this is about.
BASIC programmers have become used to 'easy' programming, but it also gave the language a bad reputation.
The consistency of the 'is-equal' operator (==) as far as SharpBASIC is concerned, lies in its counterpart operator 'not-equal' (<>); both use two characters and there's a symmetry between them.
SharpBASIC is called 'sharp' for a reason. It's not meant to be 'just another BASIC' language.
Keep it simple!