Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
A Toy Soldier
@iamthecarisma_twitter
Heyo guyz happens simple-lang cannot handle really large numbers, that problem is solvable by making the numbers into string array and perform mathematical operation on it. I am experimenting the implementation using simple-lang itself after all successfull operation then it can be moved to the C source for faster operation.
You can test https://github.com/Thecarisma/simple/blob/master/examples/basic/misc.sim which is able to add infinite string numbers successfully
Abdulazeez Abdulazeez Adeshina
@Youngestdev
Making them into string array.. seems interesting. Let me check that code out and see wah I can do.
That's a nice idea but my be slow and maybe not cool for production. Because we definitely have to be doing conversion each time we've gotta add large numbers.
A Toy Soldier
@iamthecarisma_twitter
That is how other lang do it python, java, ruby e.t.c there is no data type that can hold really large number except string. Talking of speed I ll make it into a c lib and use in simple-lang it ll be faster then, there are also ways to make the operation faster by using the best arithmethic method such as the karatsuba for multiplication and the classic carryover for addition.
Abdulazeez Abdulazeez Adeshina
@Youngestdev
That'll be just okay then!
A Toy Soldier
@iamthecarisma_twitter
A more sensible approach has been applied to DynamicLoader.sim in such a way that it does not rely on __first_call.sim any more
yet to be pushed
Abdulazeez Abdulazeez Adeshina
@Youngestdev
Ah nice, that should fix the Mac issue.
Abdulazeez Abdulazeez Adeshina
@Youngestdev
Hey @/all . I'll try installing Haiku Os and see if I can get simple-lang working on it.
A Toy Soldier
@iamthecarisma_twitter
Simple-lang works very well on Haiku Os. I ve used it before but the OS is a bit slow and it freaking require mouse capture from VM
Abdulazeez Abdulazeez Adeshina
@Youngestdev
Ehen. I just downloaded it, I'll be checking it later
Abdulazeez Abdulazeez Adeshina
@Youngestdev
Abdulazeez Abdulazeez Adeshina
@Youngestdev
Hey guys, I have a suggestion and perhaps we might change the structure of simple-lang
I think this should be proposed as an RFC. I'll set up the rfc rn
Abdulazeez Abdulazeez Adeshina
@Youngestdev
appcypher
@appcypher
Makes sense
Abdulazeez Abdulazeez Adeshina
@Youngestdev
For every substantial feature ( heavy / core ) to be implemented to simple must first pass the RFC circle before decision taking is made and a PR is made in the main repo
So, I have made the first issue in the rfc - Let's discuss the changes to be done in simple more on the RFC. Here, simple-lang/rfcs#1
Abdulazeez Abdulazeez Adeshina
@Youngestdev
@appcypher , will you be at DevFest
appcypher
@appcypher
I don't think so
Abdulazeez Abdulazeez Adeshina
@Youngestdev
Erhh.. Why ?
appcypher
@appcypher
Work will not allow
Abdulazeez Abdulazeez Adeshina
@Youngestdev
Aha, you work on saturdays ??
appcypher
@appcypher
Nope. But there are tasks that spill over.
Abdulazeez Abdulazeez Adeshina
@Youngestdev
Hmm...
So i was thinking adding more functionalities to the simple extension for vscode
Like maybe identification - like it's a function, callback etc
appcypher
@appcypher
If you can, why not. Just raise a PR and I will merge and publish.
Abdulazeez Abdulazeez Adeshina
@Youngestdev
Hehe, I actually can't. Was going to suggest that to you perhaps at your free time
appcypher
@appcypher
Oh. One of these days perhaps.
We'll see.
Abdulazeez Abdulazeez Adeshina
@Youngestdev
Great then
A Toy Soldier
@iamthecarisma_twitter
i sent a PR to fix the modules and list error simple-lang/simple#48
Abdulazeez Abdulazeez Adeshina
@Youngestdev
Okay, I just saw it. I'll check it later
A Toy Soldier
@iamthecarisma_twitter
Hello everyone simple-lang now support variadic function that can take unlimited amount of parameters which will result in the variadic keyword be a list that hold the parameters e.g the current keyword used is params having a parameter params means unlimited argument e.g
testBlock(1) 
testBlock("a string")
tesBlock([1,2],"desperado","inverse",45,87,97,new Directory("../"), [9,3,3])

block testBlock(params)
    @leghtOf(params)
a more simple example
testBlock("Hello", "World", 40)

block testBlock(params)
    @params[0] #Hello
    @params[1] #World
    @params[2] #40
A Toy Soldier
@iamthecarisma_twitter
Now what i need from you guyz before i push is that the keyword used is params but in most lang they uses ellipse ... but that will be error in simple-lang so you can decide another keyword like __VA_ARGS__, params, args
the keyword will be a secondary keyword i.e it can still be used in the code as variable name class name like any other varible unlike primary keywords like block, class
appcypher
@appcypher
I suggest using an ellipsis .... It makes it obvious that it is a varargs. Also params is a useful identifier.
A Toy Soldier
@iamthecarisma_twitter
it can still serves as an identifier
using ellipsis ... will take more scanning time as it will be added to keyword.
I ll try using the ... and give you guyz feedback
Abdulazeez Abdulazeez Adeshina
@Youngestdev

I totally agree with appcypher here. Using the ellipsis ... is better.

I suggest using an ellipsis .... It makes it obvious that it is a varargs. Also params is a useful identifier.

A Toy Soldier
@iamthecarisma_twitter

Hello guyz. Implementing the ... i hit a wall the ... is only usable in language that has type specifier e.g String str = "" but in simple lang it str = "" so the ... is not possible e.g in a block we have

block test(p1,p2,p3)

Using ... as variadic parameter

test(1,2,4,5)
block test(p1,p2,...)
    @...[0] #a big lang breaking error

or we go with C Style that will just bring a foreign identifier to fix that

test(1,2,4,5)
block test(p1,p2,...)
    @var_args[0]

Using the ... is only acceptable for strongly types language e.g java

public void functionOne(String... strings)
       System.out.println(strings[0])
buh in simple-lang we support type hinting but the ... is still not possible e.g this is valid in simple-lang
block test(String params)
    @params
A Toy Soldier
@iamthecarisma_twitter
Since we are still going to be strongly typed in future using the use strict we can have the ... on the roadmap for then
appcypher
@appcypher

I don't think ... is meant to be used as an identifier. It's more like a modifier.

So instead of the one you have above, its should actually be like this.

test(1, 2, 3, 4)
block test(p1, p2, p3...)
    return p3[0]

When types come, then it will look sth like this

test(1, 2, "Hello")
block test(Number p1, Number p2, String p3...)
    return p3[0]
A Toy Soldier
@iamthecarisma_twitter
Jez wow that is awesome.
i ll implement that
Great to have you on the simple-lang team once again @appcypher