Giter Site home page Giter Site logo

bah's Introduction

My main interest is in developing programing languages.

I'm the developer of bah-lang.

My main languages are Go, web languages, C and Bah.

Anurag's GitHub stats

What am I doing in my free time?

  • Making my own labguage (bah)
  • Making libraries for my own language
  • Making a website for my language
  • Not sleeping

bah's People

Contributors

ithirzty avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

aluciani

bah's Issues

could not compile

does bah support musl libc? I get this build error:

CC tcc
C compiler: tcc
Parsed. (2138 lines, total time: 16ms, lexer time: 4ms)
[CC-ERROR]
Could not compile.

while compiling this bah code:

#import "iostream.bah"

main(args []cpstring) int {

    println("merhaba dünya")
    return 0
}

Edit: translated to c and gcc seem to have error compiling it:

/opt/bah/builtin.bah: In function 'print':
/opt/bah/builtin.bah:93:7: warning: passing argument 1 of 'write' makes integer from pointer without a cast [-Wint-conversion]
93 | write(1, s, len(s))
| ^~~~~~~~~
| |
| void *
In file included from /opt/bah/builtin.bah:80:
/usr/include/unistd.h:51:15: note: expected 'int' but argument is of type 'void *'
51 | ssize_t write(int, const void *, size_t);
| ^~~
/opt/bah/gc.bah: In function 'cleanShutDown':
/opt/bah/gc.bah:53:1: warning: implicit declaration of function 'exit' [-Wimplicit-function-declaration]
53 | exit(1)
| ^
/opt/bah/gc.bah:30:1: note: include '<stdlib.h>' or provide a declaration of 'exit'
29 | //The allocated memory cannot be shared by multiple processes. Use the sharedMemory() function instead.
+++ |+#include <stdlib.h>
30 | memoryAlloc(s int) ptr {
/opt/bah/gc.bah:53:1: warning: incompatible implicit declaration of built-in function 'exit' [-Wbuiltin-declaration-mismatch]
53 | exit(1)
| ^
/opt/bah/gc.bah:53:1: note: include '<stdlib.h>' or provide a declaration of 'exit'
/opt/bah/gc.bah: In function 'memoryAllocSTR':
/opt/bah/gc.bah:85:20: warning: initialization of 'unsigned int *' from incompatible pointer type 'char ' [-Wincompatible-pointer-types]
85 | ln uint32
= r
| ^
/opt/bah/memory.bah: At top level:
/opt/bah/memory.bah:108: warning: "MAP_SHARED" redefined
108 | const MAP_SHARED = 1
|
In file included from /opt/bah/builtin.bah:99:
/usr/include/sys/mman.h:21: note: this is the location of the previous definition
21 | #define MAP_SHARED 0x01
|
/opt/bah/memory.bah:109: warning: "MAP_ANONYMOUS" redefined
109 | const MAP_ANONYMOUS = 32
|
/usr/include/sys/mman.h:27: note: this is the location of the previous definition
27 | #define MAP_ANONYMOUS MAP_ANON
|
/opt/bah/memory.bah: In function 'delete':
/opt/bah/memory.bah:191:21: warning: initialization of 'void *' from 'long long int' makes pointer from integer without a cast [-Wint-conversion]
191 | destOffset ptr = elemSize * i
| ^~~~~~~~
/opt/bah/memory.bah:193:17: warning: initialization of 'void *' from 'long long int' makes pointer from integer without a cast [-Wint-conversion]
193 | offset ptr = elemSize * i
| ^~~~~~~~
/opt/bah/memory.bah:194:13: warning: initialization of 'char ' from 'long long int' makes pointer from integer without a cast [-Wint-conversion]
194 | src char
= data + offset
| ^
/opt/bah/memory.bah:195:14: warning: initialization of 'char ' from 'long long int' makes pointer from integer without a cast [-Wint-conversion]
195 | dest char
= data + destOffset
| ^
/opt/bah/memory.bah: In function 'deleteRange':
/opt/bah/memory.bah:214:15: warning: initialization of 'void *' from 'long long int' makes pointer from integer without a cast [-Wint-conversion]
214 | dest ptr = data + elemSize * from
| ^
/opt/bah/memory.bah:215:14: warning: initialization of 'void *' from 'long long int' makes pointer from integer without a cast [-Wint-conversion]
215 | src ptr = dest + size + elemSize
| ^
/opt/bah/memory.bah: In function 'arrToStr':
/opt/bah/memory.bah:225:50: warning: comparison between pointer and integer
225 | if len(arr) > 0 && arr[len(arr)-1] == null {
| ^
/opt/bah/memory.bah:231:20: warning: initialization of 'unsigned int *' from incompatible pointer type 'char ' [-Wincompatible-pointer-types]
231 | ln uint32
= str
| ^
/opt/bah/builtin.bah: In function 'buffToStr':
/opt/bah/builtin.bah:111:27: warning: initialization of 'unsigned int ' from incompatible pointer type 'char ' [-Wincompatible-pointer-types]
111 | ln uint32
= s
| ^
/opt/bah/builtin.bah: In function 'cStrToBah':
/opt/bah/builtin.bah:133:27: warning: initialization of 'unsigned int ' from incompatible pointer type 'char ' [-Wincompatible-pointer-types]
133 | ln uint32
= nstr
| ^
/opt/bah/builtin.bah: In function '__Bah_multiple_concat':
/opt/bah/builtin.bah:141:22: warning: implicit declaration of function 'alloca' [-Wimplicit-function-declaration]
141 | lens uint32
= alloca(l * sizeof(uint32)) //stack list of lengths
| ^~~~~~
/opt/bah/builtin.bah:141:22: warning: incompatible implicit declaration of built-in function 'alloca' [-Wbuiltin-declaration-mismatch]
/opt/bah/builtin.bah:161:27: warning: initialization of 'unsigned int ' from incompatible pointer type 'char ' [-Wincompatible-pointer-types]
161 | ln uint32
= r
| ^
/opt/bah/builtin.bah: In function '__STR':
/opt/bah/builtin.bah:192:27: warning: initialization of 'unsigned int ' from incompatible pointer type 'char ' [-Wincompatible-pointer-types]
192 | ln uint32
= r
| ^
/opt/bah/builtin.bah: In function '__checkString':
/opt/bah/builtin.bah:208:68: warning: incompatible implicit declaration of built-in function 'alloca' [-Wbuiltin-declaration-mismatch]
208 | print("cpstring ("+l+") is null \n")
| ^
/opt/bah/builtin.bah:209:8: warning: incompatible implicit declaration of built-in function 'exit' [-Wbuiltin-declaration-mismatch]
209 | exit(1)
| ^ ~~
/opt/bah/builtin.bah:100:1: note: include '<stdlib.h>' or provide a declaration of 'exit'
99 | }
+++ |+#include <stdlib.h>
100 |
/opt/bah/thread.bah: In function 'thread__create':
/opt/bah/thread.bah:13:25: warning: implicit declaration of function 'GC_pthread_create'; did you mean 'pthread_create'? [-Wimplicit-function-declaration]
13 | const __thread_create = GC_pthread_create
| ^~~~~~~~~~~~~~~~~
/opt/bah/thread.bah:133:1: note: in expansion of macro '__thread_create'
133 | __thread_create(&this.id, null, this.handle, null)
| ^ ~~~~~~~
/opt/bah/thread.bah: In function 'thread__wait':
/opt/bah/thread.bah:14:23: warning: implicit declaration of function 'GC_pthread_join'; did you mean 'pthread_join'? [-Wimplicit-function-declaration]
14 | const __thread_join = GC_pthread_join
| ^~~~~~~~~~~~~~~
/opt/bah/thread.bah:144:1: note: in expansion of macro '__thread_join'
144 | __thread_join(this.id, null)
| ^ ~~~~~
/opt/bah/builtin.bah: In function 'fastExec':
/opt/bah/builtin.bah:264:34: warning: initialization of 'unsigned int ' from incompatible pointer type 'char ' [-Wincompatible-pointer-types]
264 | ln uint32
= response
| ^~~~
/opt/bah/builtin.bah: In function '__BAH_panic':
/opt/bah/builtin.bah:280:62: warning: incompatible implicit declaration of built-in function 'alloca' [-Wbuiltin-declaration-mismatch]
280 | print("panic ("+line+"): "+e+"\n")
| ^
/opt/bah/builtin.bah:297:40: warning: initialization of 'long long int' from 'void ' makes integer from pointer without a cast [-Wint-conversion]
297 | p int = arr[i]
| ^
/opt/bah/builtin.bah: In function '__Bah_segfault_handle':
/opt/bah/builtin.bah:340:62: warning: incompatible implicit declaration of built-in function 'alloca' [-Wbuiltin-declaration-mismatch]
340 | __BAH_panic("Memory error (segfault).\n"+res, "???")
| ^
/opt/bah/builtin.bah: In function '__Bah_init_segfaultHandle':
/opt/bah/builtin.bah:345:24: warning: passing argument 2 of 'signal' from incompatible pointer type [-Wincompatible-pointer-types]
345 | signal(noCheck(SIGSEGV), __Bah_segfault_handle)
| ^~~~~~~~~~~~~~~~~~~~~
| |
| void (
)(long long int)
In file included from merhaba.c:23:
/usr/include/signal.h:289:20: note: expected 'void (
)(int)' but argument is of type 'void (
)(long long int)'
289 | void (signal(int, void ()(int)))(int);
| ^~~~~~~~~~~~~
/opt/bah/builtin.bah: In function '__Bah_safe_string':
/opt/bah/builtin.bah:378:62: warning: incompatible implicit declaration of built-in function 'alloca' [-Wbuiltin-declaration-mismatch]
378 | return """+s+"""
| ^
/opt/bah/builtin.bah: In function '__Bah_realocate_arr':
/opt/bah/builtin.bah:400:69: warning: incompatible implicit declaration of built-in function 'alloca' [-Wbuiltin-declaration-mismatch]
400 | n: array append out of bounds violation, index = "+cStrToBah(<char
>indexStr)+" and len = "+cStrToBah(<char
>lengthStr)+". Can only append index=length.")
| ^~~~~~

/opt/bah/map.bah: In function 'mapNode__calc':
/opt/bah/map.bah:41:12: warning: comparison between pointer and integer
41 | if s[i] == null || this.str[i] != s[i] {
| ^~
/opt/bah/map.bah:45:29: warning: comparison between pointer and integer
45 | if i == this.strL && s[i] == null {
| ^~
/opt/bah/builtin.bah: In function 'strBuilder__append':
/opt/bah/builtin.bah:480:20: warning: initialization of 'unsigned int *' from incompatible pointer type 'char ' [-Wincompatible-pointer-types]
480 | ln uint32
= this.buff
| ^~~~
/opt/bah/iostream.bah: In function 'stdinput':
/opt/bah/iostream.bah:21:20: warning: passing argument 1 of 'read' makes integer from pointer without a cast [-Wint-conversion]
21 | nDataLength = read(0,buff,1024)
| ^~~~~~~~~
| |
| void *
/usr/include/unistd.h:50:14: note: expected 'int' but argument is of type 'void *'
50 | ssize_t read(int, void *, size_t);
| ^~~
/opt/bah/iostream.bah:36:20: warning: passing argument 1 of 'read' makes integer from pointer without a cast [-Wint-conversion]
36 | nDataLength = read(0,buff,1024)
| ^~~~~~~~~
| |
| void *
/usr/include/unistd.h:50:14: note: expected 'int' but argument is of type 'void *'
50 | ssize_t read(int, void *, size_t);
| ^~~
/opt/bah/iostream.bah: In function 'println':
/opt/bah/iostream.bah:61:333: warning: passing argument 1 of 'write' makes integer from pointer without a cast [-Wint-conversion]
61 | write(1, s+"\n", len(s)+1)
| ^
| |
| void *
/usr/include/unistd.h:51:15: note: expected 'int' but argument is of type 'void *'
51 | ssize_t write(int, const void *, size_t);
| ^~~
/ev/çizeylemcil/bah/merhaba.bah: In function '__BAH_init':
/ev/çizeylemcil/bah/merhaba.bah:381:29: warning: assignment discards 'volatile' qualifier from pointer target type [-Wdiscarded-qualifiers]
/an/duyum/etki/ld: /tmp/ccEjklla.o: in function main': merhaba.c:(.text+0x10): undefined reference to GC_init'
/an/duyum/etki/ld: /tmp/ccEjklla.o: in function memoryAlloc': merhaba.c:(.text+0x181): undefined reference to GC_malloc'
/an/duyum/etki/ld: /tmp/ccEjklla.o: in function destroy': merhaba.c:(.text+0x19b): undefined reference to GC_free'
/an/duyum/etki/ld: /tmp/ccEjklla.o: in function memoryRealloc': merhaba.c:(.text+0x1e0): undefined reference to GC_realloc'
/an/duyum/etki/ld: /tmp/ccEjklla.o: in function memoryOnEnd': merhaba.c:(.text+0x220): undefined reference to GC_register_finalizer_ignore_self'
/an/duyum/etki/ld: /tmp/ccEjklla.o: in function memoryAllocSTR': merhaba.c:(.text+0x2f4): undefined reference to GC_malloc'
/an/duyum/etki/ld: /tmp/ccEjklla.o: in function thread__create': merhaba.c:(.text+0x10c3): undefined reference to GC_pthread_create'
/an/duyum/etki/ld: /tmp/ccEjklla.o: in function thread__createWithArg': merhaba.c:(.text+0x10f8): undefined reference to GC_pthread_create'
/an/duyum/etki/ld: /tmp/ccEjklla.o: in function thread__wait': merhaba.c:(.text+0x1120): undefined reference to GC_pthread_join'
/an/duyum/etki/ld: /tmp/ccEjklla.o: in function __BAH_panic': merhaba.c:(.text+0x1c08): undefined reference to backtrace'
collect2: error: ld returned 1 exit status

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.