Nemerle
![本页使用了标题或全文手工转换](https://upload.wikimedia.org/wikipedia/commons/thumb/c/cd/Zh_conversion_icon_m.svg/35px-Zh_conversion_icon_m.svg.png)
编程范型 | |
---|---|
Kamil Skalski, Michał Moskal, Prof. Leszek Pacholski, Paweł Olszta 于 | |
JetBrains | |
发行时间 | 2003 |
| |
类型推论, | |
CLI | |
.n | |
nemerle | |
Nemerle | |
C#, Lisp, ML |
Nemerle,
範 例
[编辑]Hello, World!
[编辑]class Hello { static Main () : void { System.Console.WriteLine("Hello, world!"); } }
System.Console.WriteLine("Hello, world!");
巨 集 的 例 子
[编辑]資料 庫 存 取
[编辑]ExecuteReaderLoop ("SELECT firstname, lastname FROM employee WHERE firstname = $myparm", dbcon, { System.Console.WriteLine ("Name: {0} {1}", firstname, lastname) });
string sql = "SELECT firstname, lastname FROM employee WHERE firstname = :a"; NpgsqlCommand dbcmd = new NpgsqlCommand(sql, dbcon, dbtran); dbcmd.Parameters.Add("a", myparm); NpgsqlReader reader = dbcmd.ExecuteReader(); while(reader.Read()) { string firstname = reader.GetString (0); string lastname = reader.GetString (1); System.Console.WriteLine ("Name: {0} {1}", firstname, lastname) } reader.Close(); dbcmd.Dispose();
新語 言 建 構
[编辑]macro ReverseFor(i, begin, body) syntax("ford", "(", i, ";", begin, ")", body) { <[ for($i = $begin; $i >= 0; $i--)$body ]> }
ford(i ; n)print (i);
Nemerle結合 ASP.NET
[编辑]Nemerle
<%@ Page Language="Nemerle" %> <script runat="server"> Page_Load(_ : object, _ : EventArgs): void { Message.Text = $"You last accessed this page at: $(DateTime.Now)"; } EnterBtn_Click(_ : object, _ : EventArgs): void { Message.Text = $"Hi $(Name.Text), welcome to ASP.NET!"; } </script> <html> <body> <form runat="server"> Please enter your name: <asp:TextBox ID="Name" runat="server" /> <asp:Button OnClick="EnterBtn_Click" Text="Enter" runat="server" /> <p><asp:Label ID="Message" runat="server" /></p> </form> </body> </html>
...
<%@ Page Language="Nemerle" Src="test.n" Inherits="Test" %>
PInvoke
[编辑]Nemerle
using System; using System.Runtime.InteropServices; class PlatformInvokeTest { [DllImport("msvcrt.dll")] public extern static puts(c : string): int; [DllImport("msvcrt.dll")] internal extern static _flushall() : int; public static Main() : void { _ = puts("Test"); _ = _flushall(); } }
外部 連結
[编辑]- Nemerle at 99 Bottles of Beer(页面
存 档备份,存 于互联网档案 馆) - Interesting entries about Nemerle from akiramei's diary (in Japanese)(页面
存 档备份,存 于互联网档案 馆)
|