相信有很多伙伴都很喜欢自己造编程语言,在有现代的很多工具链的帮助下,实现一门编程语言,似乎已不是一件十分困难的事情.我利用 SourceGenerator 源代码生成技术实现了一个简易的中文编程语言,核心原理是将中文编程语言翻译为 C# 语言,从而完成后续的所有对接,完成了最简单的构建和运行.本文将告诉大家这个有趣的方式是如何实现 开始之前,先给大家看看效果 这是我设计的 csg 格式(Chinese programming language by SourceGenerator)的中文编程语言…
.NET 的开源,有了更多的DIY乐趣.这篇博文记录一下在新安装的 Linux Ubuntu 14.04 上通过自己动手编译 dotnet cli 的源代码生成 .net core sdk 的 deb 安装包. 1)安装一个现有版本的 .net core sdk sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ trusty main" > /etc…
http://www.zhangxinxu.com/wordpress/?p=794 一.前言 利用CSS的border属性可以生成一些图形,例如三角或是圆角.纯粹的CSS2的内容,没有兼容性的问题,我之前在纯CSS实现各类气球泡泡对话框效果一文中算是比较详细的讲述了CSS border属性生成三角的原理,以及实例.我觉得此技术相当实用的,故本文再次简单叙述一下,另外,本文还将展示可能并不为众人所知的CSS border圆角生成技术.好了,裹脚布的话就不说了,直接进入正题. 二.CSS bord…
PHP源代码生成 main/config.w32.h 1.下载php源代码包php-5.4.0.tar.gz,解压到D:\php-5.4.0 2.下载2个必要的包http://xiazai.jb51.net/201307/yuanma/bindlib_w32_jb51net.rarhttp://xiazai.jb51.net/201307/yuanma/win32build_jb51net.rar把这2个包的内容放一起,例如解压缩到 D:\win32build 3.打开cmd命令进入D:\php…
eclipse将java源代码生成jar可执行文件 用eclipse做了一个web项目的自动化测试,自己用的时候倒是很方便,打开eclipse直接运行即可,但是分享给其他小伙伴用的时候就不太方便,希望可以生成一个可执行的文件,别人使用时,直接运行就可以.实际操作了一下,记录下步骤. 1.文件一定要有main函数,刚开始我使用的是testng,脚本中无main函数,生成的文件执行失败,后来新建了一个java类,写了一个main函数,然后分别调用之前脚本中的类,如下: 2.在eclipse左侧菜单列…
大家是否好奇,在 WPF 里面,对 UIElement 重写 OnRender 方法进行渲染的内容,是如何受到上层容器控件的布局而进行坐标偏移.如有两个放入到 StackPanel 的自定义 UIElement 控件,这两个控件都在 OnRender 方法里面,画出一条从 0 到 100 的线段,此时两个控件画出的直线在窗口里面没有重叠.也就是说在 OnRender 里面绘制的内容将会叠加上元素被布局控件布局的偏移的值 阅读本文,你将了解布局控件是如何影响到里层控件的渲染,以及渲染收集过程中将会…
对于Android应用开发,大部分情况下我们使用Java就能完整地实现一个应用.但是在某些情况下,我们需要借助C/C++来写JNI本地代码.比如,在使用跨平台的第三方库的时候:为了提升密集计算性能的时候(这种情况下往往还可能会直接使用汇编语言).因此,这里我将为大家介绍如何给其它开发者创建可供使用的静态库或动态库.而应用开发者如何去连接这些生成的静态库或动态库.由于现在Android Studio已经比较成熟,因此以下描述将基于Android Studio的目录布局. 在Android Stud…
前些日子准备学习下关于lua coroutine更为强大的功能,然而发现根据lua 5.1.4版本来运行一段代码的话也会导致 "lua: attempt to yield across metamethod/C-call boundary"的错误(据悉主线程中调用yield也会如此). 于是就想使用5.2以上的版本试试;windows下没有5.2以上的版本,又不愿意使用VS编译出lua.exe;就在网上搜索下了关于使用命令行生成lua的静态库.动态库.lua.exe和luac.exe资…
一,生成sqlite3动态连接库1,去sqlite官网上下载最近的sqlite源码包,解压后得到四个文件:shell.c,sqlite3.c,sqlite3.h,sqlite3ext.h此处还需要sqlite3.def文件,它在sqlite官方生成的dll包中,下载下来,解压即可.其中,shell.c文件是做来生成exe可执行文件用的.2,打开vs2008 新建sqlite3的非mfc的DLL项目,这里只需要建立空的项目即可.3,将上面非shell.c的四个文件复制动sqlite3项目工程的目录…
最近在用Qt开发Android应用时需要获取https页面内容,但Qt内置的QNetworkAccessManager类只支持下面这些协议(调用其supportedSchemes成员函数获取): ("ftp", "file", "qrc", "http", "data") 而网上我找到的支持https的介绍是使用QSslConfiguration类,然后把OpenSSL的两个DLL(libeay32.dll…