";" That is, a semicolon at the beginning of the line
import
For now, it's a good idea to declare the following on the first line:
(import type-system) (import oo) (import s2j)
(display "HelloWorld")
Whether to output to the console with
Basically, object manipulation in object-oriented languages doesn't seem to be in the language specification, but it seems that most implementations have it separately. sisc is also prepared because it is implemented on JavaVM.
(Field instance name)
Feeling
Obj as an instance. If str as a field
(str obj)
Feeling like that.
If the argument is args in the method,
(str obj args)
Feeling like that.
It's in the readme of the interface for JSR223, but there is a var for the bound object.
For example, if you are binding as obj,
(var 'obj)
Feeling like that.
But Java instances are usually case-sensitive, aren't they?
So For example, if you are binding as Obj,
(var '|Obj|)
Feeling like that.
So to access that field str
(str (var '|Obj|))
It means that.
Well, Java fields are also case sensitive, huh.
So what if the previous str was something like Str?
So, there are methods (or operators or commands) that resolve Java field names.
(generic-java-field-accessor '|Str|)
Feeling like that.
So, to access the Str field of the bound Obj object,
( (generic-java-field-accessor '|Str|) (var '|Obj|) )
Will be.
Another for field updates 「generic-java-field-modifier」 For methods 「generic-java-method」 There is something like
Now let's assume a Java Boolean field called IsBool (let's say it's a field of a bound object called Obj) and consider using it in the if of scheme.
( (generic-java-field-accessor '|IsBool|) (var '|Obj|) )
As it is, it cannot be used in shceme, so there is something called (-> type target) to use this as a scheme, so
(->boolean ( (generic-java-field--accessor '|IsBool|) (var '|Obj|) ) )
With that feeling, it became possible to use it in scheme, so if you give it to the if operator, it will finally look like this
(if (eq? (->boolean ( (generic-java-field--accessor '|IsBool|) (var '|Obj|) ) ) #t ) (This is the true formula) (This is a fake formula) )
It will be like that.