Giter Site home page Giter Site logo

volta's People

Contributors

bhelyer avatar dav1dde avatar noname22 avatar perfaram avatar wallbraker avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

volta's Issues

Volt vs D

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?

-Lgc library not found

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 ?

Volt is BROKEN and should be fixed

@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

Why is separating class ind struct is bad?

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.

Distribute the compiler with all dll that are needed

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

Function decorator bloat

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"

error while building hello file from Getting Set Up

system:

OS: Pop 22.04 jammy
kernel version: 5.19.0-76051900-generic

problem:

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.

Coming from D guide

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)

Where to learn how to make a compiler?

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.

error: No valid LLVM Toolchains found!

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.

Feature modular/configurable runtime

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?

Change logical operators to word

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)

Volt site CMS

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.

Build failed (macOS) [can be fixed]

@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.

Does Volta need foreach_revese?

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)

take ideas from Julia and Nim languages

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.

About Volta web site

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

is Volt development stopped ?

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..?

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.