voltlang / volta Goto Github PK
View Code? Open in Web Editor NEWCompiler for the Volt Programming Language
Compiler for the Volt Programming Language
http://wiki.volt-lang.org/ doesn't work
I see that Volt is very D-inspired. Could you add mention about difference? Maybe you can look at Nim to get more interesting futures to Volt?
I followed instructions for OS X, I'm on Yosemite 10.10.4.
DMD is in the path & works, just like llvm-config.
make
seems to succeed, but make run
outputs :
[stripped]
attributes #0 = { noreturn nounwind }
attributes #1 = { uwtable }
ld: library not found for -lgc
clang: error: linker command failed with exit code 1 (use -v to see invocation)
RUN a.out
make: ./a.out: No such file or directory
make: [run] Error 1 (ignored)
Any idea ? I guess -lgc is a garbage collection library, but why is it missing ?
@Wallbraker #60 Sorry for duplicating issue, but I want to know how to fix this problem, I really want to use Volt for programming.
@Wallbraker I can't compile simple program:
input:
import watt.io;
fn main() i32
{
writeln("hello, world");
return 0;
}
output:
main.volt:1:1: error: can't find module 'core.compiler.defaultsymbols'.
/Users/t0md3an/Desktop/Volta/lib/src/volta/postparse/importresolver.d:90
I have found very interesting mention from Alexandrescu that:
"Rust has two advantages I can think of: it doesn't have the struct/class split that D does". Could anybody explain why it's bad, and maybe till Volta in WIP it's not later to change it.
Some arguments about Rust-like pattern-matching
http://forum.dlang.org/thread/[email protected]
Hi,
Over the years since D2 I've thought about what changes I'd make if starting again. I've written up a list on Google docs, hope that's OK. Not sure if there's another place for discussions.
Hope you find it interesting.
hi,
after some time being traveling on business, i try to build the llvm.dll for windows and don't succeed (have real problems with cmake). Is it possible to distribute the compiler with the needed dll's to run it?
Thanks in advance
This post was about D, but it's seems that Volt have some same issue. example:
"Function decorator bloat: I recently tagged a function @property @nogc pure @safe override
"
OS: Pop 22.04 jammy
kernel version: 5.19.0-76051900-generic
after fallowing this guide I can't finish the last step (battery build
) because of the fallowing outputs:
[redacted]/Volta/src/volt/visitor/prettyprinter.d(73): Deprecation: Usage of the `body` keyword is deprecated. Use `do` instead.
[...]
[redacted]/Volta/lib/src/volta/parser/templates.d(244): Error: `opSub` is obsolete. Use `opBinary(string op)(...) if (op == "-")` instead.
and other similar deprecation errors that may be irrelevant.
the error persists building from hello/
, root, using battery.txt
or an equivalent battery.toml
(I also received an error of a missing toml file in the hello folder)
I have all dependencies installed and updated to latest versions, including battery. I cloned all repos today from main branch. any help would be great.
It would help a lot if you can provide a guide for people who already know D which explains the differences and (why those differences have been made)
It might be a dumb question, but I've always wanted to learn how to make a compiler. I know I won't be able to make it in a week, but it'd be a fun project to do over the summer or something.
As I wrote before I am interesting in Volta as more high-level language then D. So I hope to see in it's by default things like safe int like http://code.dlang.org/packages/safeint
I followed the Getting Started guide for trying out Volt.
After installing the needed dependencies on Debian inside WSL2, I am getting the following output from
battery config /path/to/Volta /path/to/Watt
:
battery config /usr/bin/volta /usr/bin/watt
native compile
Using LLVM-9.0.1 toolchain from path.
boot cmd llvm-config: '/usr/bin/llvm-config' from path.
boot cmd llvm-ar: '/usr/bin/llvm-ar' from path.
Various tools needed by bootstrapping.
boot cmd rdmd: '/usr/bin/rdmd' from path.
error: No valid LLVM Toolchains found!
See log in: .battery/config-log.txt
.battery/config-log.txt
driver: starting config
frontend.batteryConf: BatConf parser online, lets parse some battery.conf.toml files!
frontend.batteryConf: The file '' doesn't excist or is not a file!
detect.llvm: Searching for LLVM toolchains.
detect.llvm: Could not find 'llvm-config-10' nor 'clang-10' on the path, skipping other commands.
detect.llvm: Could not find 'llvm-config-8' nor 'clang-8' on the path, skipping other commands.
detect.llvm: Could not find 'llvm-config-7' nor 'clang-7' on the path, skipping other commands.
detect.llvm: Could not find 'llvm-config-6.0' nor 'clang-6.0' on the path, skipping other commands.
detect.llvm: Could not find 'llvm-config-5.0' nor 'clang-5.0' on the path, skipping other commands.
detect.llvm: Could not find 'llvm-config-4.0' nor 'clang-4.0' on the path, skipping other commands.
detect.llvm: Could not find 'llvm-config-3.9' nor 'clang-3.9' on the path, skipping other commands.
detect.llvm: Found
from = path
ver = 9.0.1
configCmd = '/usr/bin/llvm-config'
configArgs = []
arCmd = '/usr/bin/llvm-ar'
arArgs = []
detect.llvm: Found
from = path
ver = 9.0.1
configCmd = '/usr/bin/llvm-config-9'
configArgs = []
arCmd = '/usr/bin/llvm-ar-9'
arArgs = []
detect.llvm: Was not given 'llvm-config' nor 'clang', skipping other commands.
detect.llvm: Checking llvm from ''.
detect.llvm: Was not given 'llvm-config' nor 'clang', skipping other commands.
detect.gdc: Detecting GDC fron path.
detect.gdc: Failed to find 'gdc' on path.
detect.gdc: Failed to find 'gdc-6' on path.
detect.gdc: Failed to find 'gdc-7' on path.
detect.gdc: Failed to find 'gdc-8' on path.
detect.gdc: Failed to find 'gdc-9' on path.
detect.rdmd: Detecting rdmd on path.
detect.rdmd: Found rdmd '/usr/bin/rdmd'
detect.rdmd: Found
from = path
cmd = /usr/bin/rdmd
args = []
detect.llvm: Searching for LLVM toolchains.
detect.llvm: Could not find 'llvm-config-10' nor 'clang-10' on the path, skipping other commands.
detect.llvm: Could not find 'llvm-config-8' nor 'clang-8' on the path, skipping other commands.
detect.llvm: Could not find 'llvm-config-7' nor 'clang-7' on the path, skipping other commands.
detect.llvm: Could not find 'llvm-config-6.0' nor 'clang-6.0' on the path, skipping other commands.
detect.llvm: Could not find 'llvm-config-5.0' nor 'clang-5.0' on the path, skipping other commands.
detect.llvm: Could not find 'llvm-config-4.0' nor 'clang-4.0' on the path, skipping other commands.
detect.llvm: Could not find 'llvm-config-3.9' nor 'clang-3.9' on the path, skipping other commands.
detect.llvm: Found
from = path
ver = 9.0.1
configCmd = '/usr/bin/llvm-config'
configArgs = []
arCmd = '/usr/bin/llvm-ar'
arArgs = []
detect.llvm: Found
from = path
ver = 9.0.1
configCmd = '/usr/bin/llvm-config-9'
configArgs = []
arCmd = '/usr/bin/llvm-ar-9'
arArgs = []
detect.llvm: Was not given 'llvm-config' nor 'clang', skipping other commands.
detect.llvm: Checking llvm from ''.
detect.llvm: Was not given 'llvm-config' nor 'clang', skipping other commands.
This Feature idea is inspired by John Blows "programming language for games" and Vulkans" more responsibility for the developer". I will post more details about the idea in D forum at some time. There are people (like e.g. John Blow) who don't like/trust a GC language, especially for games.
The idea (if feasible at all) is to configure the game project wide runtime to not use the GC but instead ref counted or plain new and delete allocators (preferably in code as pragmas). The later one would require project wide @System declaration as unsafe.
What do you think?
I really do not see any benefits in using operators like: &&
||
and so on. It's much easier to read code that use normal words like: AND OR and so on.
if (a = 1 OR b =2)
look better then if (a = 1 || b =2)
I would like to suggest migrate Volt site to our new CMS that already in use at dlang.ru
We just end very huge refactoring of it. It's very powerfull CMS based in .NET MVC. Maybe it's not best stack of technologies, but it's enough good.
The CMS is now private project. Very soon we will move it's to public. It's can be very good for creation community of about Volta, like was at D1 time with Dsource.org
I can give distribution of our CMS for free (except sources -- I can distribute them due to license issues -- it's not only my project). So you can look at it. And if you like, I would also happy to make Volta site more usable.
Very soon we will end work on new default theme, and site would look move better then now.
@bhelyer @Wallbraker @Dav1dde @noname22 @perfaram
Trying to compile it for an hour, sorry for calling:
macOS:
RDMD volt
lib/src/volta/parser/base.d(470): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/ir/location.d(130): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/toplevel.d(680): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/templates.d(236): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/templates.d(350): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/expression.d(1048): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/expression.d(1076): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/expression.d(1261): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/expression.d(1404): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/expression.d(1427): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/expression.d(1935): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(421): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(435): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(446): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(871): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(908): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(918): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(940): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(954): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(1277): Deprecation: opSub is deprecated. Use opBinary(string op)(...) if (op == "-") instead.
dsupport/src/watt/text/sink.d(57): Deprecation: returning &this.sink escapes a reference to parameter this, perhaps annotate with return
ld: unknown option: -Wl,-search_paths_first
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Error: linker exited with status 1
make: *** [GNUmakefile:150: volt] Error 1
Linux:
RDMD volt
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data.rel.ro+0x10): undefined reference to `_D4watt4path12__ModuleInfoZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data.rel.ro+0x18): undefined reference to `_D4watt2io3std12__ModuleInfoZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data.rel.ro+0x20): undefined reference to `_D4watt2io4file12__ModuleInfoZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data.rel.ro+0x28): undefined reference to `_D4volt3arg12__ModuleInfoZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data.rel.ro+0x30): undefined reference to `_D5volta8settings12__ModuleInfoZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data.rel.ro+0x38): undefined reference to `_D4volt6errors12__ModuleInfoZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data.rel.ro+0x40): undefined reference to `_D5volta7license12__ModuleInfoZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data.rel.ro+0x48): undefined reference to `_D4volt10interfaces12__ModuleInfoZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data.rel.ro+0x50): undefined reference to `_D4volt6driver12__ModuleInfoZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data.rel.ro+0x58): undefined reference to `_D4volt4util4path12__ModuleInfoZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data.rel.ro+0x60): undefined reference to `_D4volt4util4perf12__ModuleInfoZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o: in function `_Dmain':
/root/Volta/src/main.d:33: undefined reference to `_D4volt4util4perfQfSQsQpQm4Perf'
/usr/bin/ld: /root/Volta/src/main.d:33: undefined reference to `_D4volt4util4perf4Perf8perfInitMFZv'
/usr/bin/ld: /root/Volta/src/main.d:56: undefined reference to `_D5volta8settings8Settings7__ClassZ'
/usr/bin/ld: /root/Volta/src/main.d:56: undefined reference to `_D4watt4path10getExecDirFZAya'
/usr/bin/ld: /root/Volta/src/main.d:56: undefined reference to `_D5volta8settings8Settings6__ctorMFAyaQdZCQBoQBlQBf'
/usr/bin/ld: /root/Volta/src/main.d:57: undefined reference to `_D5volta8settings8Settings10setDefaultMFZv'
/usr/bin/ld: /root/Volta/src/main.d:58: undefined reference to `_D5volta10interfaces10VersionSet7__ClassZ'
/usr/bin/ld: /root/Volta/src/main.d:58: undefined reference to `_D5volta10interfaces10VersionSet6__ctorMFZCQBpQBmQBd'
/usr/bin/ld: /root/Volta/src/main.d:59: undefined reference to `_D5volta10interfaces10TargetInfo7__ClassZ'
/usr/bin/ld: /root/Volta/src/main.d:75: undefined reference to `_D4volt3arg10filterArgsFACQyQv3ArgKAAyaC5volta10interfaces10VersionSetCQBf8settings8SettingsZv'
/usr/bin/ld: /root/Volta/src/main.d:86: undefined reference to `_D5volta8settings8Settings14processConfigsMFZv'
/usr/bin/ld: /root/Volta/src/main.d:87: undefined reference to `_D5volta8settings8Settings13replaceMacrosMFZv'
/usr/bin/ld: /root/Volta/src/main.d:89: undefined reference to `_D5volta8settings8Settings14replaceEscapesMFAyaZQe'
/usr/bin/ld: /root/Volta/src/main.d:91: undefined reference to `_D4volt6driver10VoltDriver7__ClassZ'
/usr/bin/ld: /root/Volta/src/main.d:91: undefined reference to `_D4volt6driver10VoltDriver6__ctorMFC5volta8settings8SettingsCQz10interfaces10VersionSetCQCaQBc10TargetInfoAAyaZCQEgQEeQEa'
/usr/bin/ld: /root/Volta/src/main.d:35: undefined reference to `_D4volt4util4perfQfSQsQpQm4Perf'
/usr/bin/ld: /root/Volta/src/main.d:35: undefined reference to `_D4volt4util4perf4Perf5closeMFZv'
/usr/bin/ld: /root/Volta/src/main.d:44: undefined reference to `_D4volt4util4perfQfSQsQpQm4Perf'
/usr/bin/ld: /root/Volta/src/main.d:45: undefined reference to `_D4volt4util4perf4Perf5printMFAyaQdZv'
/usr/bin/ld: /root/Volta/src/main.d:49: undefined reference to `_D6undead7cstream4derrCQvQq5CFile'
/usr/bin/ld: /root/Volta/src/main.d:50: undefined reference to `_D6undead7cstream4doutCQvQq5CFile'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o: in function `_D4main10handleArgsFAAyaKAC4volt3arg3ArgC5volta10interfaces10VersionSetCQBf8settings8SettingsZb':
/root/Volta/src/main.d:228: undefined reference to `_D4volt3arg9parseArchFAyaZE5volta10interfaces4Arch'
/usr/bin/ld: /root/Volta/src/main.d:232: undefined reference to `_D4volt3arg13parsePlatformFAyaJE5volta10interfaces8CRuntimeZEQBdQBa8Platform'
/usr/bin/ld: /root/Volta/src/main.d:390: undefined reference to `_D6undead7cstream4derrCQvQq5CFile'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D24TypeInfo_AC4volt3arg3Arg6__initZ+0x10): undefined reference to `_D4volt3arg3Arg7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o: in function `_D4main10handleArgsFAAyaKAC4volt3arg3ArgC5volta10interfaces10VersionSetCQBf8settings8SettingsZ11libraryNameMFQDkZv':
/root/Volta/src/main.d:170: undefined reference to `_D4volt3arg3Arg7__ClassZ'
/usr/bin/ld: /root/Volta/src/main.d:170: undefined reference to `_D4volt3arg3Arg6__ctorMFAyaEQBaQyQw4KindZCQBoQBmQBl'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o: in function `_D4main10handleArgsFAAyaKAC4volt3arg3ArgC5volta10interfaces10VersionSetCQBf8settings8SettingsZ11libraryPathMFQDkZv':
/root/Volta/src/main.d:176: undefined reference to `_D4volt3arg3Arg7__ClassZ'
/usr/bin/ld: /root/Volta/src/main.d:176: undefined reference to `_D4volt3arg3Arg6__ctorMFAyaEQBaQyQw4KindZCQBoQBmQBl'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o: in function `_D4main10handleArgsFAAyaKAC4volt3arg3ArgC5volta10interfaces10VersionSetCQBf8settings8SettingsZ11makeArgFileMFQDkZQDj':
/root/Volta/src/main.d:182: undefined reference to `_D4volt3arg3Arg7__ClassZ'
/usr/bin/ld: /root/Volta/src/main.d:182: undefined reference to `_D4volt3arg3Arg6__ctorMFAyaEQBaQyQw4KindZCQBoQBmQBl'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o: in function `_D4main10handleArgsFAAyaKAC4volt3arg3ArgC5volta10interfaces10VersionSetCQBf8settings8SettingsZ11makeArgNextMFEQDfQDdQDc4KindZQDv':
/root/Volta/src/main.d:190: undefined reference to `_D4volt3arg3Arg7__ClassZ'
/usr/bin/ld: /root/Volta/src/main.d:190: undefined reference to `_D4volt3arg3Arg6__ctorMFAyaEQBaQyQw4KindZCQBoQBmQBl'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o: in function `_D4main10handleArgsFAAyaKAC4volt3arg3ArgC5volta10interfaces10VersionSetCQBf8settings8SettingsZ7makeArgMFEQDaQCyQCx4KindZQDq':
/root/Volta/src/main.d:197: undefined reference to `_D4volt3arg3Arg7__ClassZ'
/usr/bin/ld: /root/Volta/src/main.d:197: undefined reference to `_D4volt3arg3Arg6__ctorMFEQxQuQs4KindZCQBkQBiQBh'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o: in function `_D4main14getConfigLinesFZAAya':
/root/Volta/src/main.d:402: undefined reference to `_D4watt4path10getExecDirFZAya'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o: in function `_D4main12printLicenseFZb':
/root/Volta/src/main.d:482: undefined reference to `_D5volta7license12licenseArrayAAya'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D44TypeInfo_G16C5volta2ir11declaration8Function6__initZ+0x10): undefined reference to `_D5volta2ir11declaration8Function7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D42TypeInfo_xC5volta2ir11declaration8Function6__initZ+0x10): undefined reference to `_D5volta2ir11declaration8Function7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D44TypeInfo_G32C5volta2ir11declaration8Function6__initZ+0x10): undefined reference to `_D5volta2ir11declaration8Function7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D36TypeInfo_G16C5volta2ir7context5Scope6__initZ+0x10): undefined reference to `_D5volta2ir7context5Scope7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D34TypeInfo_xC5volta2ir7context5Scope6__initZ+0x10): undefined reference to `_D5volta2ir7context5Scope7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D32TypeInfo_G16C5volta2ir4type4Type6__initZ+0x10): undefined reference to `_D5volta2ir4type4Type7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D30TypeInfo_xC5volta2ir4type4Type6__initZ+0x10): undefined reference to `_D5volta2ir4type4Type7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D32TypeInfo_G16C5volta2ir4base4Node6__initZ+0x10): undefined reference to `_D5volta2ir4base4Node7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D30TypeInfo_xC5volta2ir4base4Node6__initZ+0x10): undefined reference to `_D5volta2ir4base4Node7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D41TypeInfo_G16C5volta2ir8toplevel9Attribute6__initZ+0x10): undefined reference to `_D5volta2ir8toplevel9Attribute7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D39TypeInfo_xC5volta2ir8toplevel9Attribute6__initZ+0x10): undefined reference to `_D5volta2ir8toplevel9Attribute7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D67TypeInfo_G16C5volta9postparse13attribremoval13AttribRemoval7Context6__initZ+0x10): undefined reference to `_D5volta9postparse13attribremoval13AttribRemoval7Context7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D65TypeInfo_xC5volta9postparse13attribremoval13AttribRemoval7Context6__initZ+0x10): undefined reference to `_D5volta9postparse13attribremoval13AttribRemoval7Context7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D38TypeInfo_G32C5volta2ir10expression3Exp6__initZ+0x10): undefined reference to `_D5volta2ir10expression3Exp7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D36TypeInfo_xC5volta2ir10expression3Exp6__initZ+0x10): undefined reference to `_D5volta2ir10expression3Exp7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D37TypeInfo_G32C4volt8semantic3cfg5Block6__initZ+0x10): undefined reference to `_D4volt8semantic3cfg5Block7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D35TypeInfo_xC4volt8semantic3cfg5Block6__initZ+0x10): undefined reference to `_D4volt8semantic3cfg5Block7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D37TypeInfo_G32C5volta2ir8toplevel5Class6__initZ+0x10): undefined reference to `_D5volta2ir8toplevel5Class7__ClassZ'
/usr/bin/ld: /tmp/.rdmd-0/rdmd-main.d-34F0527F2AD23D1D51BD93EE5A3F21AE/objs/volt.o:(.data._D35TypeInfo_xC5volta2ir8toplevel5Class6__initZ+0x10): undefined reference to `_D5volta2ir8toplevel5Class7__ClassZ'
collect2: error: ld returned 1 exit status
Error: linker exited with status 1
make: *** [GNUmakefile:150: volt] Error 1
Linker error.
I have seen that Volta use foreach_reverse. But it's operator look a little bit ugly. Maybe it's better to replace it with something foreach(i; 99 .. 0 : -1)
. And could you change semantic of to be able write like:
foreach (element in elements)
Or even like Python
for (element in elements)
Or:
for (element in elements.reverse)
I am still thinking about ideal programming language. I found Julia look very good. But it's purpose to create language for science. The D also look for me very good, but it's a little bit low level for me. So I hope that Volta could grow to something like Julia language.
Hi! I have some experience with vibed and vue-js. I would like to try to write Volta web site. But I am not sure about technologies. Would it be good to have Volta site written in D?
I can't promise, but I would like to try.
And please could you write about section on site that you need. For example code.volta-lang.org forum etc
Hi,
just discovered Volt and it look nice, but every date I can see seems old now. is the development on a pause or stopped..?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.