SDLang-D v0.8.1 - Initial release of SDL (Simple Declarative Language) for D

2013-02-28 Thread Nick Sabalausky
SDLang-D is an SDL (Simple Declarative Language) library for D.

SDLang-D:
https://github.com/Abscissa/SDLang-D

Original SDL:
http://sdl.ikayzo.org/display/SDL/Language+Guide

SDL is similar to JSON or XML, except it's:
* Less verbose
* Type-aware

This is what SDL looks like (some of these examples, and more, are from
the SDL site):

first Joe
last Coder

numbers 12 53 2 635
names Sally Frank N. Stein
pets chihuahua=small dalmation=hyper mastiff=big

mixed 34.7f Tim somedate=2010/08/14

myNamespace:person name=Joe Coder {
age 36
}

Differences from original Java implementation:

* API is completely redesigned for D.

* License is zlib/libpng, not LGPL. (No source from the Java or
  Ruby implementations was used or looked at.)

* Anonymous tags are named  (ie, empty string) not content. Not
  sure yet whether or not this will change in the future.

* Dates with unknown or invalid time zones use a special type
  indicating unknown time zone (DateTimeFracUnknownZone) instead of
  assuming GMT.

Still TODO (in no order):

* Major improvements to API for Tags.

* Ability to write SDL output, not just read it.

* Make sure that all forms of newlines are handled correctly.
  (Unix-style '\n' definitely works right. Not certian about Win-style
  '\r\n', Mac9-style '\r' or special Unicode newlines.)

* Make this a DUB package.

* Improve docs.

More information about the SDL language itself is here:
http://sdl.ikayzo.org/display/SDL/Language+Guide

D implementation's homepage and readme:
https://github.com/Abscissa/SDLang-D

API reference:
http://semitwist.com/sdlang-d-api



Re: Crystal

2013-02-28 Thread thedeemon
On Sunday, 17 February 2013 at 06:28:09 UTC, Ary Borenszweig 
wrote:
One time I asked in this newsgroup if it was possible to have 
an auto keyword for function/method arguments. And... why not 
make all functions/methods be templates on the type of its 
arguments?


I think nobody liked this idea. I said Ruby is like this: you 
never specify types in method definitions.


I started thinking about this idea: a compiled language that 
looked like a dynamic language. Is it possible?


I think everyone who wants to create languages should first 
familiarize himself with ML family of languages and especially 
OCaml. It's got global type inference done right, you can write 
big programs never specifying types of arguments of functions, 
they all got inferred, and not just to first occurrence but to 
most general (polymorphic) form. The compiler is incredibly fast 
and generated code is pretty fast too (approximately as fast as 
Java).


Things to learn: Damas-Hindley-Milner, structural typing, row 
polymorphism.


So your questions are already answered ages ago: yes, it is 
possible to have static typing with conciseness of dynamic 
languages, speed of static languages and a fast compiler which 
inferences types.


Also, knowing OCaml will make your life much easier as a compiler 
developer. Writing compilers is much much easier and more 
convenient in ML than in Ruby, I know it from first-hand 
experience, I did both in the past.


Re: DPaste ain't going anywhere

2013-02-28 Thread Dejan Lekic

On Monday, 14 January 2013 at 09:34:50 UTC, nazriel wrote:

Hello!

I would love to say that it was just 1 April joke that Dpaste 
is going down but I can't. Things got complicated. I couldn't 
afford extending domain because I began to run low on money.


Thanks to Vladimir Panteleev aka CyberShadow, who donated money 
in order to extended domain. Things need a bit of time in order 
to make everything work, of course banks being the biggest 
bottleneck as usually. For those who can't live without Dpaste 
anymore, Vladimir created temporary subdomain. Here it is:


http://dpaste.1azy.net/

The most important things seems to work well. The only problem 
for now maybe loging in with Github, Google, and Facebook 
accounts. This issue will be resolved soon.


We are also discussing with Vladimir about hosting backend of 
dpaste on his server.


Source code for dpaste will be released soon on Github.
Development process will be open source from now.
Everyone will be able to contribute to dpaste.

So once again,
Hooray and big, big thanks for Vladimir for doing all of this.
Thanks bud!


Well, you know my e-mail - you could have e-mailed me any time, 
and I could host dpaste on my VPS... I have nothing there anyway 
and it is up for two years already.


Re: New Russian site about D Programming Language

2013-02-28 Thread Dejan Lekic
Suliman wrote:

 Hi All! I know that a lot of Russian guys are take part in the
 project. Few months ago I had promise to create Russian site
 about D. And now I want to announce it.
 
 http://dlang.ru
 
 I know that there is several bugs (items on top menu do not work)
 and few issues on site, but I hope that we will fix it in next
 3-4 days. Now it's mostly ok. In next hour I hope to setup @live
 login. Yesterday MS site show error)

Good stuff! :)

My Russian is little bit rusty, but I understand all those articles so far.  :)

-- 
Dejan Lekic
dejan.lekic (a) gmail.com
http://dejan.lekic.org


Re: SDLang-D v0.8.1 - Initial release of SDL (Simple Declarative Language) for D

2013-02-28 Thread Sönke Ludwig
Am 28.02.2013 09:02, schrieb Nick Sabalausky:
 SDLang-D is an SDL (Simple Declarative Language) library for D.
 
 SDLang-D:
 https://github.com/Abscissa/SDLang-D
 
 Original SDL:
 http://sdl.ikayzo.org/display/SDL/Language+Guide
 
 SDL is similar to JSON or XML, except it's:
 * Less verbose
 * Type-aware
 
 This is what SDL looks like (some of these examples, and more, are from
 the SDL site):
 
 first Joe
 last Coder
 
 numbers 12 53 2 635
 names Sally Frank N. Stein
 pets chihuahua=small dalmation=hyper mastiff=big
 
 mixed 34.7f Tim somedate=2010/08/14
 
 myNamespace:person name=Joe Coder {
 age 36
 }
 
 Differences from original Java implementation:
 
 * API is completely redesigned for D.
 
 * License is zlib/libpng, not LGPL. (No source from the Java or
   Ruby implementations was used or looked at.)
 
 * Anonymous tags are named  (ie, empty string) not content. Not
   sure yet whether or not this will change in the future.
 
 * Dates with unknown or invalid time zones use a special type
   indicating unknown time zone (DateTimeFracUnknownZone) instead of
   assuming GMT.
 
 Still TODO (in no order):
 
 * Major improvements to API for Tags.
 
 * Ability to write SDL output, not just read it.
 
 * Make sure that all forms of newlines are handled correctly.
   (Unix-style '\n' definitely works right. Not certian about Win-style
   '\r\n', Mac9-style '\r' or special Unicode newlines.)
 
 * Make this a DUB package.
 
 * Improve docs.
 
 More information about the SDL language itself is here:
 http://sdl.ikayzo.org/display/SDL/Language+Guide
 
 D implementation's homepage and readme:
 https://github.com/Abscissa/SDLang-D
 
 API reference:
 http://semitwist.com/sdlang-d-api
 

Great thing! Looking forward to the output capability. The next data DSL
I'll do will definitely be in terms of SDL.

WRT DUB, this package.json should work as the bare minimum:
{
name: sdlang-d,
sourcePaths: [src],
importPaths: [src]
}

The sourcePaths and importPaths will not be necessary in the future,
though. They should be inferred from the directory structure for the
special cases source and src, but currently are only for source.


Re: SDLang-D v0.8.1 - Initial release of SDL (Simple Declarative Language) for D

2013-02-28 Thread Nick Sabalausky
On Thu, 28 Feb 2013 19:41:01 +0100
Sönke Ludwig slud...@outerproduct.org wrote:
 
 WRT DUB, this package.json should work as the bare minimum:
 {
   name: sdlang-d,
   sourcePaths: [src],
   importPaths: [src]
 }
 
 The sourcePaths and importPaths will not be necessary in the
 future, though. They should be inferred from the directory structure
 for the special cases source and src, but currently are only for
 source.

Ah, cool. I figured it'd be something pretty simple, but it was getting
late enough that even simple things were becoming difficult so I held
off on that, needed sleep ;)



Re: Crystal

2013-02-28 Thread pjmlp

On Thursday, 28 February 2013 at 08:22:45 UTC, thedeemon wrote:
On Sunday, 17 February 2013 at 06:28:09 UTC, Ary Borenszweig 
wrote:
One time I asked in this newsgroup if it was possible to have 
an auto keyword for function/method arguments. And... why 
not make all functions/methods be templates on the type of its 
arguments?


I think nobody liked this idea. I said Ruby is like this: you 
never specify types in method definitions.


I started thinking about this idea: a compiled language that 
looked like a dynamic language. Is it possible?


I think everyone who wants to create languages should first 
familiarize himself with ML family of languages and especially 
OCaml. It's got global type inference done right, you can write 
big programs never specifying types of arguments of functions, 
they all got inferred, and not just to first occurrence but to 
most general (polymorphic) form. The compiler is incredibly 
fast and generated code is pretty fast too (approximately as 
fast as Java).


Things to learn: Damas-Hindley-Milner, structural typing, row 
polymorphism.


So your questions are already answered ages ago: yes, it is 
possible to have static typing with conciseness of dynamic 
languages, speed of static languages and a fast compiler which 
inferences types.


Also, knowing OCaml will make your life much easier as a 
compiler developer. Writing compilers is much much easier and 
more convenient in ML than in Ruby, I know it from first-hand 
experience, I did both in the past.


My university degree had a strong focus in programming languages. 
We were not allowed to use ML, Lisp or Prolog for compiler design 
classes because it would make the project too easy. :)


--
Paulo